Je souhaite calculer la moyenne d'une colonne de mon tableau en fonction des valeurs d'une autre colonne.
Voilà à quoi ressemble mon tableau (TableS1):
Days1 Deme1 Deme2 value modif Deme
36.5 4 6 0.51 0.49 46
40 6 6 0.20 0.19 66
51 6 6 0.19 0.17 66
38 3 5 0.22 0.20 35
59 8 2 0.23 0.22 82
... .. ... ... ... ...
Je voudrai calculer la moyenne de la colonne modif pour chaque combinaison de Deme1 et Deme2. C'est à dire la moyenne pour Deme1=1 et Deme2=1, Deme1=1 et Deme2=2, et ainsi de suite sachant que les valeurs de Deme1 et Deme2 peuvent aller de 1 à 8. J'ai fait une colonne Deme où j'ai regroupé Deme1 et Deme2.
J'ai ecrit ce code:
Code : Tout sélectionner
mean11 <- mean(TableS1$modif[TableS1$Deme == 11])
mean11
mean22 <- mean(TableS1$modif[TableS1$Deme == 22])
mean22
mean33 <- mean(TableS1$modif[TableS1$Deme == 33])
mean33
mean44 <- mean(TableS1$modif[TableS1$Deme == 44])
mean44
mean55 <- mean(TableS1$modif[TableS1$Deme == 55])
mean55
mean66 <- mean(TableS1$modif[TableS1$Deme == 66])
mean66
mean77 <- mean(TableS1$modif[TableS1$Deme == 77])
mean77
mean88 <- mean(TableS1$modif[TableS1$Deme == 88])
mean88
mean12 <- mean(TableS1$modif[TableS1$Deme == 12 | TableS1$Deme == 21])
mean12
...
meanij
J'aimerai savoir s'il n'y aurai pas une façon plus simple de faire ça (par exemple avec une boucle).
De plus, j'aimerai additionner toute les moyennes divisé par le nombre de Demes (mean11+mean12+mean13+....meanij)/nombre de Demes
Cependant certaines mean sont egal a NA car certain Deme sont absent (par exemple, dans la colonne Deme1, il n'y a pas de 1). Par consequent, le nombre de Deme et de mean va varier suivant mes fichiers. Comment puis-je changer le nombre de Deme?
J'espère que mes explications sont claires.
Merci d'avance pour votre aide.