我必须计算 n 维数组的每个矩阵的平均值。由于我是 R 新手,任何人都可以帮助我。
例如
M = 4
m = array(1:10, dim= c(10, 1, M))
m
z = matrix(NA, M,1)
for (i in 1:z){
for (j in 1:z){
z[i, j] = mean(m[ , , i])
}
}
z
我试过上面的方法,但它不正确
最佳答案
1) 申请 试试 apply
apply(m, 3, mean)
## [1] 5.5 5.5 5.5 5.5
2) 循环 或者循环执行:
n <- dim(m)[3]
result <- numeric(n)
for(i in 1:n) result[i] <- mean(m[,,i])
result
## [1] 5.5 5.5 5.5 5.5
3) reshape 或将其 reshape 为矩阵并采用列均值。
n
是从上面。colMeans(matrix(m,, n))
## [1] 5.5 5.5 5.5 5.5
关于arrays - R中数组的每个矩阵的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48976720/