Existe-t-il un moyen de l'améliorer ou de le rendre plus simple?moyens de calcul d'un groupe par facteur
means.by<-function(data,INDEX){
b<-by(data,INDEX,function(d)apply(d,2,mean))
return(structure(
t(matrix(unlist(b),nrow=length(b[[1]]))),
dimnames=list(names(b),col.names=names(b[[1]]))
))
}
L'idée est la même que pour une instruction SAS MEANS BY. La fonction 'means.by' prend un data.frame et une variable d'indexation et calcule la moyenne sur les colonnes du data.frame pour chaque ensemble de lignes correspondant aux valeurs uniques d'INDEX et renvoie une nouvelle trame de données avec la ligne nomme les valeurs uniques de INDEX.
Je suis sûr qu'il doit y avoir une meilleure façon de le faire dans R mais je ne pouvais penser à rien.
j'ai vu l'exemple que vous avez publié sur votre site. plyr est conçu exactement pour cette fonctionnalité. J'ai mis à jour mon exemple pour correspondre à la sortie sur votre site. –