Ho un set di dati di 482 osservazioni.
data=Populationfull
Ho intenzione di fare un'analisi dell'associazione genotipo per 3 SNP. Sto cercando di costruire un modello per la mia analisi e sto usando aov (y ~ x, data = ...). Per un tratto ho diversi effetti fissi e covariate che ho incluso nel modello, in questo modo:
Starts <- aov(Starts~Sex+DMRT3+Birthyear+Country+Earnings+Voltsec+Autosec, data=Populationfull) summary(Starts) Df Sum Sq Mean Sq F value Pr(>F) Sex 3 17.90 5.97 42.844 < 2e-16 *** DMRT3 2 1.14 0.57 4.110 0.017 * Birthyear 9 5.59 0.62 4.461 1.26e-05 *** Country 1 11.28 11.28 81.005 < 2e-16 *** Earnings 1 109.01 109.01 782.838 < 2e-16 *** Voltsec 1 12.27 12.27 88.086 < 2e-16 *** Autosec 1 8.97 8.97 64.443 8.27e-15 *** Residuals 463 64.48 0.14 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Ho scoperto che se ho cambiato l'ordine delle variabili nel modello ho ottenuto valori p diversi, vedi sotto.
Starts2 <- aov(Starts~Voltsec+Autosec+Sex+DMRT3+Birthyear+Country+Earnings, data=Populationfull) summary(Starts2) Df Sum Sq Mean Sq F value Pr(>F) Voltsec 1 2.18 2.18 15.627 8.92e-05 *** Autosec 1 100.60 100.60 722.443 < 2e-16 *** Sex 3 10.43 3.48 24.962 5.50e-15 *** DMRT3 2 0.82 0.41 2.957 0.05294 . Birthyear 9 3.25 0.36 2.591 0.00638 ** Country 1 2.25 2.25 16.183 6.72e-05 *** Earnings 1 46.64 46.64 334.903 < 2e-16 *** Residuals 463 64.48 0.14 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Perché ottengo valori p diversi a seconda dell'ordine in cui sono codificate le variabili / fattori / covariate / fixedeffects (?)? C'è un modo per "correggere" per questo? Può essere che sto usando il modello sbagliato? Sono ancora abbastanza nuovo in R, quindi se puoi aiutarmi con questo ti prego di mantenerlo davvero semplice in modo che io possa capire la risposta hehe ... Grazie, spero che qualcuno possa aiutarmi a capirlo!
Earnings 1 109.01 109.01 782.838 < 2e-16 ***
tua seconda manche Earnings 1 46.64 46.64 334.903 < 2e-16 ***
. I tuoi risultati non sono gli stessi. Inizia controllando che non hai fatto altro che riordinare le variabili.
car
pacchetto: implementa ANOVA di tipo II e di tipo III, che non dipendono dall'ordine delle variabili, mentre aov
ANOVA di tipo I.
Populationfull
rendere il tuo problema riproducibile . Questo non accade con l'esempio dellaaov()
pagina di aiuto.summary(aov(yield ~ block + N + P + K, npk)); summary(aov(yield ~ K + P + block + N , npk))