在R中求和3D矩阵

时间:2015-04-05 17:39:40

标签: r matrix 3d

我有一个3D矩阵," xx",尺寸:6847x2x2。这是一个片段:

         > xx[1,,]
              [,1] [,2]
         [1,]  0.4  0.1
         [2,]  0.1  0.4

另一个......

          > xx[6847,,]
                [,1] [,2]
           [1,]  0.4  0.9
           [2,]  0.1  0.8

我想要做的是创建一个2x2矩阵,其中该矩阵是所有6847矩阵的总和。也就是说,matrix_new [1,1]将引用.4 + .. +。4而matrix_new [1,2]将是.1 + .. +。9谢谢

1 个答案:

答案 0 :(得分:3)

colSums(或rowSums)在这里可能很有用

# Data 
ar <- 1:12
dim(ar) <- c(3, 2, 2)

ar[1,,]
#     [,1] [,2]
#[1,]    1    7
#[2,]    4   10

 ar[2,,]
#     [,1] [,2]
#[1,]    2    8
#[2,]    5   11

ar[3,,]
#     [,1] [,2]
#[1,]    3    9
#[2,]    6   12

 # Sum over first dimension
 colSums(ar, dims=1)
 #     [,1] [,2]
 #[1,]    6   24
 #[2,]   15   33