728x90

배열은 동일한 형태의 원소를 n 차원으로 구성한 데이터 객체입니다.

앞에서 설명한 행렬은 2 차원의 배열에 해당됩니다. 행렬객체는 2차원의 배열에 해당됩니다.

배열을 사용하여 통계분석이나 컨설팅을 한 적은 거의 없습니다.

 

배열 만들기

 

배열은 array 함수를 이용하여 배열을 만듭니다.

1부터 24까지의 숫자를 2 x 3 x 4 (3차원)의 배열로 만들어 봅니다.

 

> array(1:24, c(2,3,4))

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

      2 x 3 x 4 3차원의 배열을 만드는데 2x3 2차원의 배열을 4개 만드는 것과 같은 개념입니다.

 

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

 

속성 살펴보기

2차원 배열은 행렬(matrix)이면서 배열(array) 입니다.

3차원 배열은 배열(array) 이지만 행렬(matrix)가 아닙니다.... 이건 당연

 

> arr46 <- array(1:24,c(4,6))

> class(arr46)

  [1] "matrix" "array"

> is.matrix(arr46)

[1] TRUE

> is.array(arr46)

[1] TRUE

 

> arr234 <- array(1:24,c(2,3,4))
> class(arr234)

   [1] "array"

> is.array(arr234)

[1] TRUE

> is.matrix(arr234)

[1] FALSE

 

 

배열 요소에 접근하기

3차원 이상의 배열을 접근할 때에는 주의가 필요합니다. 

저자는 30 여년 이상 통계컨설팅을 하면서 배열을 사용한 경험은 5~6번 밖에 되지 않습니다.

 

arr234 <- array(1:24,c(2,3,4)); arr234


arr234[,,4]    4번째 요소
arr234[1,,]   각 요소의 1행

+ Recent posts