У мене є набір даних із 482 спостережень.
data=Populationfull
Я збираюся зробити аналіз асоціації генотипів для 3 СНП. Я намагаюся побудувати модель для мого аналізу, і я використовую aov (y ~ x, data = ...). Для однієї ознаки у мене є кілька фіксованих ефектів і коваріатів, які я включив у модель, як-от так:
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
Я виявив, що якщо я змінив порядок змінних у моделі, я отримав різні p-значення, дивіться нижче.
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
Чому я отримую різні p-значення залежно від того, в якому порядку кодуються змінні / фактори / коваріати / fixedeffects (?)? Чи є спосіб «виправити» це? Може бути, що я використовую неправильну модель? Я все ще зовсім новий в R, тому якщо ви можете мені допомогти у цьому, будь ласка, будьте дуже простою, щоб я зрозумів відповідь хе-хе ... Дякую, сподіваюся, хтось може допомогти мені зрозуміти це!
Earnings 1 109.01 109.01 782.838 < 2e-16 ***
ваш другий запуск Earnings 1 46.64 46.64 334.903 < 2e-16 ***
. Ваші результати неоднакові. Почніть з перевірки, щоб переконатися, що ви не зробили більше, ніж упорядкувати змінні.
car
заглянути в пакет - він реалізує ANOVA типу II і III типу, які не залежать від порядку змінних, тоді як aov
ANOVA типу I.
Populationfull
щоб зробити вашу проблему відтворюваною . Це не відбувається з прикладом зіaov()
сторінки довідки.summary(aov(yield ~ block + N + P + K, npk)); summary(aov(yield ~ K + P + block + N , npk))