среднее значение каждой матрицы массива в R
Я должен вычислить среднее значение каждой матрицы 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
Я пробовал выше способ, но его неверный
2 ответа:
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) переформуйте или переформуйте его в матрицу и возьмите столбец means.
n
идет сверху.colMeans(matrix(m,, n)) ## [1] 5.5 5.5 5.5 5.5
Насколько я понимаю, функция
mean
предоставляет свой ответ в виде матрицы 1 x 1, которая, как я предполагаю, является тем, что вы ищете, поскольку вы не ссылались на среднее значение по строкам или столбцам.Вот некоторые подробности по теме Из предыдущего поста: Как получить среднюю, медиану и другие статистические данные по всей матрице, массиву или фрейму данных?