J'analyse un ensemble de données à l'aide d'un modèle à effets mixtes avec un effet fixe (condition) et deux effets aléatoires (participant en raison de la conception et de la paire du sujet). Le modèle a été généré avec le lme4
package: exp.model<-lmer(outcome~condition+(1|participant)+(1|pair),data=exp)
.
Ensuite, j'ai effectué un test de rapport de vraisemblance de ce modèle par rapport au modèle sans l'effet fixe (condition) et j'ai une différence significative. Il y a 3 conditions dans mon ensemble de données, donc je veux faire une comparaison multiple mais je ne sais pas quelle méthode utiliser . J'ai trouvé un certain nombre de questions similaires sur CrossValidated et d'autres forums, mais je suis encore assez confus.
D'après ce que j'ai vu, les gens ont suggéré d'utiliser
1. Le lsmeans
package - lsmeans(exp.model,pairwise~condition)
qui me donne la sortie suivante:
condition lsmean SE df lower.CL upper.CL
Condition1 0.6538060 0.03272705 47.98 0.5880030 0.7196089
Condition2 0.7027413 0.03272705 47.98 0.6369384 0.7685443
Condition3 0.7580522 0.03272705 47.98 0.6922493 0.8238552
Confidence level used: 0.95
$contrasts
contrast estimate SE df t.ratio p.value
Condition1 - Condition2 -0.04893538 0.03813262 62.07 -1.283 0.4099
Condition1 - Condition3 -0.10424628 0.03813262 62.07 -2.734 0.0219
Condition2 - Condition3 -0.05531090 0.03813262 62.07 -1.450 0.3217
P value adjustment: tukey method for comparing a family of 3 estimates
2. Le multcomp
package de deux manières différentes - l'utilisation mcp
glht(exp.model,mcp(condition="Tukey"))
résultant en
Simultaneous Tests for General Linear Hypotheses
Multiple Comparisons of Means: Tukey Contrasts
Fit: lmer(formula = outcome ~ condition + (1 | participant) + (1 | pair),
data = exp, REML = FALSE)
Linear Hypotheses:
Estimate Std. Error z value Pr(>|z|)
Condition2 - Condition1 == 0 0.04894 0.03749 1.305 0.392
Condition3 - Condition1 == 0 0.10425 0.03749 2.781 0.015 *
Condition3 - Condition2 == 0 0.05531 0.03749 1.475 0.303
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Adjusted p values reported -- single-step method)
et l'utilisation lsm
glht(exp.model,lsm(pairwise~condition))
résultant en
Note: df set to 62
Simultaneous Tests for General Linear Hypotheses
Fit: lmer(formula = outcome ~ condition + (1 | participant) + (1 | pair),
data = exp, REML = FALSE)
Linear Hypotheses:
Estimate Std. Error t value Pr(>|t|)
Condition1 - Condition2 == 0 -0.04894 0.03749 -1.305 0.3977
Condition1 - Condition3 == 0 -0.10425 0.03749 -2.781 0.0195 *
Condition2 - Condition3 == 0 -0.05531 0.03749 -1.475 0.3098
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Adjusted p values reported -- single-step method)
Comme vous pouvez le voir, les méthodes donnent des résultats différents. C'est la première fois que je travaille avec R et les statistiques, donc quelque chose pourrait mal tourner mais je ne sais pas où. Mes questions sont:
Quelles sont les différences entre les méthodes présentées? J'ai lu dans une réponse à une question connexe qu'il s'agit des degrés de liberté ( lsmeans
vs. glht
).
Existe-t-il des règles ou des recommandations quant à l'utilisation de la méthode 1, c'est-à-dire la bonne pour ce type d'ensemble / modèle de données, etc.? Quel résultat dois-je signaler? Sans savoir mieux, j'irais probablement rapporter la valeur de p la plus élevée que j'ai pu jouer en toute sécurité, mais ce serait bien d'avoir une meilleure raison. Merci
la source
lsmeans
utilise le package pbkrtest, qui prévoit (1) les calculs df de Kenward-Rogers et (2) une matrice de covariance ajustée avec un biais réduit dans les estimations. Si vous définissez d'abordlsm.options(disable.pbkrtest=TRUE)
, alors l'lsmeans
appel avecadjust="mvt"
donnera les mêmes résultats queglht
, à l'exception de légères différences dues à l'algorithme randomisé utilisé par les deux packages pour la distribution t multivariée.summary
méthode pourglht
permet diverses méthodes de test de réduction en plus de l'ajustement de multiplicité en une étape (CI simultanés) par défaut. Sur un point complètement différent, si vous avez plus d'un facteur, vouslsm
pouvez créer les types de comparaisons habituels assez facilement, tout enmcp
ne pouvant pas le faire du tout.