R cinsinden lm ve aov arasındaki bildirilen p değerlerindeki fark


12

Aşağıdakiler aovve lmçağrılardaki p-değerleri arasındaki farkları ne açıklar ? Fark sadece farklı türde kareler toplamı hesaplamalarından mı kaynaklanıyor?

set.seed(10)
data=rnorm(12)
f1=rep(c(1,2),6)
f2=c(rep(1,6),rep(2,6))
summary(aov(data~f1*f2))
summary(lm(data~f1*f2))$coeff

Yanıtlar:


13

summary(aov)Tip I (sıralı) kareler olarak adlandırılan toplamları kullanır. summary(lm)Sıralı olmayan tip III karelerin toplamını kullanır. Ayrıntılar için gung'un cevabına bakınız.


Aramanız gerektiğini unutmayın lm(data ~ factor(f1) * factor(2))( aov()formülün RHS'sini otomatik olarak faktörlere dönüştürür). Sonra lineer regresyonda genel -istist için paydaya dikkat edin ( daha fazla açıklama için bu cevaba bakınız ):t

t=ψ^ψ0σ^c(XX)1c

β c Fc(XX)1c , vektörü değiştiği için test edilen her katsayısı için farklıdır . Buna karşılık, ANOVA testindeki payda her zaman MSE'dir.βcF


1
Bence bu cevabın ilk cümlesi yanlış. Farkın tam olarak farklı kareler toplamı türlerinden kaynaklandığı görülmektedir : yani tip I ve tip II / III. Tip I ardışıktır, lmrapor eden şey budur , Tip II / III ise değildir. Bu, @ gung'un bağlandığınız cevabında oldukça ayrıntılı olarak açıklanmaktadır.
amip diyor Reinstate Monica

@amoeba Cevabı düzeltmek için ne önerirsiniz?
caracal

İlk paragrafı düzenledim, düzenlemeye uygun olup olmadığınızı görün ve istediğiniz gibi değiştirmekten çekinmeyin.
amip diyor Reinstate Monica

2
set.seed(10)
data=rnorm(12)
f1=rep(c(1,2),6)
f2=c(rep(1,6),rep(2,6))
summary(aov(data~f1*f2))
            Df Sum Sq Mean Sq F value Pr(>F)
f1           1  0.535  0.5347   0.597  0.462
f2           1  0.002  0.0018   0.002  0.966
f1:f2        1  0.121  0.1208   0.135  0.723
Residuals    8  7.169  0.8962               
summary(lm(data~f1*f2))$coeff
               Estimate Std. Error    t value  Pr(>|t|)
(Intercept)  0.05222024   2.732756  0.0191090 0.9852221
f1          -0.17992329   1.728346 -0.1041014 0.9196514
f2          -0.62637109   1.728346 -0.3624106 0.7264325
f1:f2        0.40139439   1.093102  0.3672066 0.7229887

Bunlar iki farklı kod. Lm modelinden katsayılara ihtiyacınız var. aov modelinden ise sadece varyasyon kaynaklarını tablo haline getiriyorsunuz. Kodu deneyin

anova(lm(data~f1*f2))
Analysis of Variance Table

Response: data
          Df Sum Sq Mean Sq F value Pr(>F)
f1         1 0.5347 0.53468  0.5966 0.4621
f2         1 0.0018 0.00177  0.0020 0.9657
f1:f2      1 0.1208 0.12084  0.1348 0.7230
Residuals  8 7.1692 0.89615   

Bu, aynı sonuçlara yol açan varyasyon kaynaklarının çizelgesini verir.


2
Bu, üst panelinizin iki özeti için p değerlerinin neden f1ve f2farklı olduğunu soran soruya cevap vermiyor gibi görünüyor . Yalnızca gösteren Görünüşe summary(aov(...))ve anova(lm(...))içinde Rbenzer çıkışı var.
whuber
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.