Id aiment pour calculer la moyenne et écart-type à partir d'une trame de données avec une colonne pour le paramètre et une colonne pour un identificateur de groupe. Comment puis-je les calculer en utilisant tapply
? Je pourrais utiliser sd(v1, group, na.rm=TRUE)
, mais ne peux pas répondre à la na.rm=TRUE
dans la déclaration lors de l'utilisation tapply
. omit.na
n'est pas une option. J'ai tout un tas de paramètres et je dois les parcourir étape par étape sans perdre la moitié de l'espace de données en excluant toutes les lignes avec une valeur manquante.Comment passer na.rm comme argument à tapply?
data("weightgain", package = "HSAUR")
tapply(weightgain$weightgain, list(weightgain$source, weightgain$type), mean)
est de même pour la déclaration by
.
x<-c(1,2,3,4,5,6,7,8,9,NA)
y<-c(2,3,NA,3,4,NA,2,3,NA,2)
group<-rep((factor(LETTERS[1:2])),5)
df<-data.frame(x,y,group)
df
by(df$x,df$group,summary)
by(df$x,df$group,mean)
sd(df$x) #result: NA
sd(df$x, na.rm=TRUE) #result: 2.738613
Des idées pour y arriver?
Quasiment! Puis-je l'appliquer à plusieurs colonnes de la table ou devrais-je faire défiler une liste de paramètres? 'Tapply (df [c ("x", "y")], df groupe $, sd, na.rm = TRUE)' ou si? – Doc
La question n'a pas de sens. Avec 'help (tapply)' vous devriez voir qu'il y a un argument '...' qui est décrit comme offrant une promesse que les éléments nommés seront passés à la fonction FUN. Quelle est l'erreur avez-vous lorsque vous avez utilisé le code: 'tapply (df V1 $, df groupe $, sd, na.rm = TRUE)' –