Sto cercando di passare dall'uso del ezpacchetto a lmemisure ripetute ANOVA (poiché spero di poter usare contrasti personalizzati con lme).
Seguendo i consigli di questo post sul blog sono stato in grado di impostare lo stesso modello usando entrambi aov(come fa ez, quando richiesto) e lme. Tuttavia, mentre nell'esempio riportato in quel post i valori F concordano perfettamente tra aove lme(l'ho verificato e lo fanno), questo non è il caso dei miei dati. Sebbene i valori F siano simili, non sono gli stessi.
aovrestituisce un valore f di 1.3399, lmerestituisce 1.36264. Sono disposto ad accettare il aovrisultato come "corretto" in quanto questo è anche ciò che SPSS restituisce (e questo è ciò che conta per il mio campo / supervisore).
Domande:
Sarebbe bello se qualcuno potesse spiegare perché esiste questa differenza e come posso usare
lmeper fornire risultati credibili. (Sarei anche disposto a utilizzarelmerinvece chelmeper questo tipo di cose, se dà il risultato "corretto". Tuttavia, non l'ho usato finora.)Dopo aver risolto questo problema, vorrei eseguire un'analisi del contrasto. In particolare, sarei interessato al contrasto della messa in comune dei primi due livelli di fattore (cioè,
c("MP", "MT")) e confrontarlo con il terzo livello di fattore (cioè,"AC"). Inoltre, testando il terzo contro il quarto livello di fattore (cioè"AC"contro"DA").
Dati:
tau.base <- structure(list(id = structure(c(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L,
9L, 10L, 11L, 12L, 13L, 14L, 15L, 16L, 17L, 18L, 19L, 20L, 21L,
22L, 1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L,
14L, 15L, 16L, 17L, 18L, 19L, 20L, 21L, 22L, 1L, 2L, 3L, 4L,
5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 16L, 17L, 18L,
19L, 20L, 21L, 22L, 1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L,
11L, 12L, 13L, 14L, 15L, 16L, 17L, 18L, 19L, 20L, 21L, 22L), .Label = c("A18K",
"D21C", "F25E", "G25D", "H05M", "H07A", "H08H", "H25C", "H28E",
"H30D", "J10G", "J22J", "K20U", "M09M", "P20E", "P26G", "P28G",
"R03C", "U21S", "W08A", "W15V", "W18R"), class = "factor"), factor = structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L,
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L,
3L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L,
4L, 4L, 4L, 4L, 4L, 4L, 4L), .Label = c("MP", "MT", "AC", "DA"
), class = "factor"), value = c(0.9648092876, 0.2128662077, 1,
0.0607615485, 0.9912814024, 3.22e-08, 0.8073856412, 0.1465590332,
0.9981672618, 1, 1, 1, 0.9794401938, 0.6102546108, 0.428651501,
1, 0.1710644881, 1, 0.7639763913, 1, 0.5298989196, 1, 1, 0.7162733447,
0.7871177434, 1, 1, 1, 0.8560509327, 0.3096989662, 1, 8.51e-08,
0.3278862311, 0.0953598576, 1, 1.38e-08, 1.07e-08, 0.545290432,
0.1305621416, 2.61e-08, 1, 0.9834051136, 0.8044114935, 0.7938839461,
0.9910112678, 2.58e-08, 0.5762677121, 0.4750002288, 1e-08, 0.8584252623,
1, 1, 0.6020385797, 8.51e-08, 0.7964935271, 0.2238374288, 0.263377904,
1, 1.07e-08, 0.3160751898, 5.8e-08, 0.3460325565, 0.6842217296,
1.01e-08, 0.9438301877, 0.5578367224, 2.18e-08, 1, 0.9161424562,
0.2924856039, 1e-08, 0.8672987992, 0.9266688748, 0.8356425464,
0.9988463913, 0.2960361777, 0.0285680426, 0.0969063841, 0.6947998266,
0.0138254805, 1, 0.3494775301, 1, 2.61e-08, 1.52e-08, 0.5393467752,
1, 0.9069223275)), .Names = c("id", "factor", "value"), class = "data.frame", row.names = c(1L,
6L, 10L, 13L, 16L, 17L, 18L, 22L, 23L, 24L, 27L, 29L, 31L, 33L,
42L, 43L, 44L, 45L, 54L, 56L, 58L, 61L, 64L, 69L, 73L, 76L, 79L,
80L, 81L, 85L, 86L, 87L, 90L, 92L, 94L, 96L, 105L, 106L, 107L,
108L, 117L, 119L, 121L, 124L, 127L, 132L, 136L, 139L, 142L, 143L,
144L, 148L, 149L, 150L, 153L, 155L, 157L, 159L, 168L, 169L, 170L,
171L, 180L, 182L, 184L, 187L, 190L, 195L, 199L, 202L, 205L, 206L,
207L, 211L, 212L, 213L, 216L, 218L, 220L, 222L, 231L, 232L, 233L,
234L, 243L, 245L, 247L, 250L))
E il codice:
require(nlme)
summary(aov(value ~ factor+Error(id/factor), data = tau.base))
anova(lme(value ~ factor, data = tau.base, random = ~1|id))
lmerisultati del libro di testo standard ANOVA (fornito da aov, ed è quello di cui ho bisogno), questa non è un'opzione per me. Nel mio articolo voglio segnalare un ANOVA, non qualcosa di simile a un ANOVA. È interessante notare che Venables & Ripley (2002, p. 285) mostrano che entrambi gli approcci portano a stime identiche. Ma le differenze nei valori F mi lasciano una brutta sensazione. Inoltre, Anova()(da car) restituisce solo valori Chi² per gli lmeoggetti. Pertanto per me la mia prima domanda non ha ancora ricevuto risposta.
lme; ma per i contrasti, glhtfunziona anche con gli lmadattamenti, non solo lmecon quelli. (Inoltre, i lmerisultati sono anche risultati da manuale standard.)
lmun'analisi di misura ripetuta. aovPuò solo gestire misure ripetute, ma restituirà un oggetto di classe aovlistche purtroppo non è gestito da glht.
lmusa l'errore residuo come termine di errore per tutti gli effetti; quando ci sono effetti che dovrebbero usare un termine di errore diverso, aovè necessario (o invece, usando i risultati di lmper calcolare manualmente le statistiche F). Nel tuo esempio, il termine di errore per factorè l' id:factorinterazione, che è il termine di errore residuo in un modello additivo. Confronta i tuoi risultati con anova(lm(value~factor+id)).