我有2000个大小为27 * 27的协方差矩阵,我想得到所有2000个矩阵的均值协方差矩阵。我想要的结果是一个大小为27x27的矩阵,其中位置[1,1]是给定27个矩阵的位置[1,1]的平均值。 我可以从其他帖子看到我应该创建一个数组并使用apply函数,但它不起作用!
我的代码:
a<-array(ml.1[c(1:2000)])
apply(a,c(1,2),mean)
我收到此错误消息: if(d2 == 0L){:缺少值需要TRUE / FALSE
时出错如果有人能帮助我解决这个问题,我将不胜感激。
答案 0 :(得分:1)
首先,@ eipi10是对的,你的问题是不可复制的。但关键在于如何设置阵列。
#Make some fake data 10 matrices 10x10
m <- lapply(1:10, function(x) matrix(rnorm(100), nrow = 10))
#bind the matrices together
a <- do.call(cbind, m)
#recast the matrix into three dimensions
dim(a) <- c(10,10,10)
#now apply should work
apply(a, c(1,2), mean)