본문 바로가기
5. 자료구조/3) 배열 | array()

[R코딩] array 함수 없이 벡터로 배열 만드는 방법

by makhimh 2020. 12. 15.
반응형

array 함수는 보통 아래와 같이 만듭니다.

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

     [,1] [,2] [,3] 
[1,]    1    4    3 
[2,]    2    1    4 
[3,]    3    2    1 

, , 2 

     [,1] [,2] [,3] 
[1,]    2    1    4 
[2,]    3    2    1 
[3,]    4    3    2 


벡터에 dim 함수를 적용해도 array가 생성됩니다. dim이 2차원이면 matrix가 생성됩니다. 

> v1=1:18 
> dim(v1)=c(3,3,2) 
> v1 
, , 1 

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

, , 2 

     [,1] [,2] [,3] 
[1,]   10   13   16 
[2,]   11   14   17 
[3,]   12   15   18 


단, array 함수에서 가능했던 반복규칙은 적용되지 않습니다.

> v1=1:4 
> dim(v1)=c(2,2,3) 
Error in dim(v1) = c(2, 2, 3) :  
  dims [product 12] do not match the length of object [4]
반응형

댓글