2017-10-04 3 views
1

2次元と3次元の要素数が同じで、すべてのリスト要素を含む3D配列に変換する必要がある3D配列のリストがあります。再現性の例として3次元配列のリストをその最初の次元で結合する方法は?

m1 <- array(seq(1,12*5),c(3,4,5)) 
m2 <- array(seq(100,16*5+100),c(4,4,5)) 
RE <- list(m1, m2) 

その後

> m1[1,,] 
    [,1] [,2] [,3] [,4] [,5] 
[1,] 1 13 25 37 49 
[2,] 4 16 28 40 52 
[3,] 7 19 31 43 55 
[4,] 10 22 34 46 58 

そして

> m2[4,,] 
    [,1] [,2] [,3] [,4] [,5] 
[1,] 103 119 135 151 167 
[2,] 107 123 139 155 171 
[3,] 111 127 143 159 175 
[4,] 115 131 147 163 179 

私はM[1,,] = m1[1,,]で始まるで終わる、単一の3D配列Mとしてそれを持っている必要がありますM[7,,] = m2[4,,]

答えて

2

これはファンクションのabindパッケージの方が簡単です。試してみてください

library(abind) 
M <- abind(m1, m2, along=1) 
# or, using the list 
M <- do.call("abind", c(RE, along=1)) 
関連する問題