본문 바로가기
코딩

데이터 구조

by 눈표범  2021. 7. 13.

 데이터를 책이라고 한다면, 데이터구조는 책을 보관하는 책장이나 서랍 캐비닛 등 에 비유할 수 있다. R에서 주로 사용하는 데이터 구조는 벡터(vector), 데이터프레임(dataframe), 리스트(list) 등 3가지다. 이외에도 매트릭스(matrix)와 어레이(array)가 있다. 5가지 데이터구조를 그림으로 표현하면 다음과 같다 (Figure: 4.1).

 

 

Figure 4.1: 데이터 구조

 

1. 벡터 c()

1차원의 데이터구조다. 개별 값(요소)를 1차원의 공간에 배치하는 데이터구조다. c()함수로 벡터를 만든다. ‘c’는 combine 혹은 concatenate로서 값들을 ’결합하다’ 혹은 ’연결시키다’는 의미다.

 

fruit_v <- c('사과', '배', '오렌지')

 

 

2. 데이터프레임 data.frame()

행과 열로 구성된 2차원의 데이터구조다. 1차원 데이터구조인 벡터를 모아 만든다. data.frame()함수로 만든다. 앞서 만든 문자벡터, 숫자벡터, 논리벡터 5개를 이용해 데이터프레임을 만들어 ’df’에 할당해 보자. str()함수는 데이터구조를 보여준다. ’structure’의 준말이다. summary()함수로는 요약한 내용을 볼수 있다.

 

df <- data.frame(id_v, age_v, status_v, weight_v, height_v)  

str(df)

 

 

 

Figure 4.2: 행렬 구조의 데이터프레임

 

 

 

4. 매트릭스와 어레이

벡터를 2차원 구조로 구성한 데이터구조가 매트릭스이고, 3차원 구조로 구성한 데이터구조가 어레이다. 거꾸로 표현하면, 벡터는 1차원 어레이, 매트릭스는 2차원 어레이, 어레이는 3차원 어레이라고도 할수 있다.

 

 

4.1) 매트릭스 matrix()

벡터에 행과 열을 지정해 만든다. 1부터 20까지의 숫자로 이뤄진 벡터를 5개 행으로 이뤄진 매트릭스를 만들면 다음과 같다.

matrix(1:20, nrow = 5)

 

열을 지정해 만들수도 있다.

matrix(1:20, ncol = 10)

 

 

 

4.2) 어레이 array()

기본 속성은 매트릭스와 같다. 2개 차원만 지정하면 매트릭스가 된다. 차원은 dim =인자를 이용한다. 1부터 6까지의 숫자벡터를 2행 3열의 매트릭스로 만들어 보자.

matrix(1:6, nrow = 2)

 

 

3차원 어레이를 만들려면 차원dim =을 3개 지정한다. 1에서 24까지의 숫자벡터를 2행과 3열로 이뤄전 3차원 어레이를 만들어 보자.

array(1:24, dim = c(2, 3, 4))

 

 

 

출처 : https://bookdown.org/ahn_media/bookdown-demo/data1.html

'코딩' 카테고리의 다른 글

CSS 선택자) '.class ul ' 과 '.class > ul' 의 차이점  (0) 2021.07.13
BeautifulSoup4 크롤링 사용법 정리  (0) 2021.07.13
Python 의 List 와 Tuple  (0) 2021.07.13
JSON 이란?  (0) 2021.07.13
디렉토리(directory)  (0) 2021.07.11

댓글