자료 구조

(1)

(2)


행렬(matrix)

1. 생성

matrix(data = 1:9, # matrix 구성 데이터
       nrow = 3,   # 행 수
       ncol = 3,   # 컬럼 수
       byrow = T)  # 행 우선순위 여부(default F)

     [,1] [,2] [,3]
[1,]    1    2    3
[2,]    4    5    6
[3,]    7    8    9

2. 색인

행렬 m1을 만들고 원하는 값을 검색해봅시다.

m1<-matrix(data = 1:9, 
        nrow = 3); m1
     [,1] [,2] [,3]
[1,]    1    4    7
[2,]    2    5    8
[3,]    3    6    9

# 2번째 열 모두 출력
m1[ ,2]  # row, col
[1] 4 5 6

# 1번째 행 모두 출력
m1[1,]
[1] 1 4 7

# 1, 3번째 행 및 2,3번째열 출력
m1[c(1,3),c(2,3)]
     [,1] [,2]
[1,]    4    7
[2,]    6    9

# 2,3 번째 행 출력(슬라이싱)
m1[,2:3]
     [,1] [,2]
[1,]    4    7
[2,]    5    8
[3,]    6    9



배열(array)

배열은 다차원 데이터 구조로, 동일한 데이터 타입으로 구성되어있습니다.



데이터프레임(dataframe)

행과 열의 구조를 갖는 2차원 데이터 구조로 엑셀에서의 표, 데이터베이스에서의 테이블과 유사합니다. key(column) - value 구조를 갖습니다. ​벡터는 같은 타입의 문자만 들어가기 때문에 기존 데이터 프레임에 행 삽입시 데이터 타입이 바뀔수 있습니다.

(+) R 4버전 이전에는 stringAsFactors 옵션을 건드리지 않으면 데이터프레임 생성시 문자 변수를 요인(factor)값으로 불러와 기존 값 외에 못 들어왔었는데 버전 상승에 따라 해당 옵션의 기본값이 FALSE로 바뀌어서 신경쓰지 않아도 됩니다.