Je me demande comment utiliser apply sur un tableau multidimensionnel. J'ai quelque chose comme ce qui suit:Utilisation de apply sur un tableau multidimensionnel dans R
A <- array(0, c(2, 2, 5))
for(i in 1:5) {
A[, , i] <- matrix(rnorm(4), 2, 2)
}
Je voudrais prendre la moyenne de ces tranches pour obtenir un 2 par 2 matrice. Toute façon que je viens avec est assez kludgy.
J'espérais pouvoir utiliser appliquer, comme je le ferais si je voulais le dire moyenne des colonnes d'une matrice:
B <- matrix(rnorm(10), 5, 2)
B.mean <- apply(B, 2, mean)
Mais cela ne semble pas fonctionner comme je pense qu'il pourrait avec des tableaux 3D:
A.mean <- apply(A, 3, mean)
J'apprécie vos suggestions.
Parfait! Et c'était juste là dans le fichier d'aide pour array, mais je ne l'ai pas vu jusqu'à ce que vous l'ayez indiqué, même après l'avoir regardé. Je vous remercie! – TJB
En général, le paramètre 'margin' de' apply' doit être un vecteur de dimensions que vous voulez conserver plutôt que de réduire. – mbq
qu'en est-il: mean.data.frame (A)? –