Bonjour,
je souhaiterai faire des tests stats par groupe pour éviter beaucoup de subset et multiplier les tests
voici ma problématique simplifiée :
- variable de réponse = Biomasse
- variable explicative = Traitement (3 doses)
- variable de groupe = Variete (7 variétés de blé)
Je voudrai connaître l'effet des différents traitements sur la biomasse de la plante mais par variété et non globalement.
Pour m'eviter de faire des subset par variété, auriez-vous une astuce assez simple (car je ne suis pas experte en R) pour que je puisse faire mes différents tests par variété en une fois?
J'ai tenté ça pour faire une Anova :
res1 <- ddply(data, "Variete", function(data)
Anova(lm(Biomasse~Traitement, data = data)))
res1
et R me donne ce tableau :
# Variete Sum Sq Df F value Pr(>F)
#1 anv_anv 0.01235245 2 0.7781847 4.630106e-01
#2 cul_cul 0.05015412 2 2.2831639 1.075296e-01
#3 obe_obe 0.12516923 2 9.1905189 2.821369e-04 ***
#4 pes_pes 0.06701308 2 4.1885097 1.959465e-02 *
#5 scu_scu 0.02899102 2 2.0876259 1.319727e-01
#6 sur_sur 0.02364750 2 2.6199736 8.003770e-02
#7 voi_voi 0.15099909 2 18.4103891 3.913775e-07 ***
Jusque là je suis contente car j'obtient que la moyenne d'au moins un des trois traitements diffère des deux autres pour les variétés "obe", "pes" et "voi". Je veux donc ensuite savoir quels traitements diffèrent des autres. Mais c'est là que ça se complique! Je n'arrive pas à faire la même chose pour faire un test de Tukey par variété :-(
j'ai essayé dans le même genre :
library(multcomp)
res1b <- dlply(data, "Variété", function(data)
glht(lm(Biomasse~Traitement, data = data), linfct=mcp(Traitement="Tukey")))
res1b
mais ça ne fonctionne absolument pas :-(
Auriez-vous une idée svp?