Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用R求三维矩阵的和_R_Matrix_3d - Fatal编程技术网

用R求三维矩阵的和

用R求三维矩阵的和,r,matrix,3d,R,Matrix,3d,我有一个3D矩阵“xx”,尺寸为6847x2x2x2。这是一片: > 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

我有一个3D矩阵“xx”,尺寸为6847x2x2x2。这是一片:

         > 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,谢谢这里可能有用

# 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
#数据

嗯……似乎没有人得到结果。在第一篇文章中,我得到了你的6847x2@Nicola,我确实得到了一个2x2矩阵,但是所有的值都是na。基于示例
xx如果您有
na
s,请尝试:
apply(xx,c(2,3),FUN=sum,na.rm=TRUE)
。谢谢大家。不,rm是正确的。我使用了apply函数和colsums函数,它们都得到了相同的值。