วิธีการตั้งค่าและตีความ ANOVA ต่างกับแพ็คเกจรถยนต์ใน R อย่างไร


15

สมมติว่าฉันมีการทดลองแบบแฟคทอเรียล 2x2 ที่ฉันต้องการทำ ANOVA เช่นนี้ตัวอย่างเช่น:

d   <- data.frame(a=factor(sample(c('a1','a2'), 100, rep=T)),
                  b=factor(sample(c('b1','b2'), 100, rep=T)));
d$y <- as.numeric(d$a)*rnorm(100, mean=.75, sd=1) +
       as.numeric(d$b)*rnorm(100, mean=1.2, sd=1) +
       as.numeric(d$a)*as.numeric(d$b)*rnorm(100, mean=.5, sd=1) +
       rnorm(100);
  1. ในกรณีที่ไม่มีการโต้ตอบที่สำคัญโดยค่าเริ่มต้น (เช่นcontr.treatment) ผลลัพธ์ของAnova()ความสำคัญโดยรวมของaในทุกระดับของbและbเหนือทุกระดับของaถูกที่?

  2. ฉันควรระบุความแตกต่างที่จะช่วยให้ฉันทดสอบความสำคัญของผลกระทบaกับbการคงที่ที่ระดับ b1 ของผลกระทบaกับbการคงที่ที่ระดับ b2 และการโต้ตอบa:bอย่างไร

คำตอบ:


18

ตัวอย่างของคุณนำไปสู่ขนาดของเซลล์ที่ไม่เท่ากันซึ่งหมายความว่าสสาร "ประเภทของผลรวมของสแควร์" ที่แตกต่างกันและการทดสอบเอฟเฟกต์หลักนั้นไม่ง่ายอย่างที่คุณระบุ Anova()ใช้ผลรวมกำลังสองของ Type II ดูคำถามนี้เพื่อเริ่มต้น

มีหลายวิธีในการทดสอบความแตกต่าง โปรดทราบว่าประเภท SS ไม่สำคัญอย่างที่เราทดสอบในการออกแบบปัจจัยเดียวที่เกี่ยวข้อง ฉันขอแนะนำให้ใช้ขั้นตอนต่อไปนี้:

# turn your 2x2 design into the corresponding 4x1 design using interaction()
> d$ab <- interaction(d$a, d$b)       # creates new factor coding the 2*2 conditions
> levels(d$ab)                        # this is the order of the 4 conditions
[1] "a1.b1" "a2.b1" "a1.b2" "a2.b2"

> aovRes <- aov(y ~ ab, data=d)       # oneway ANOVA using aov() with new factor

# specify the contrasts you want to test as a matrix (see above for order of cells)
> cntrMat <- rbind("contr 01"=c(1, -1,  0,  0),  # coefficients for testing a within b1
+                  "contr 02"=c(0,  0,  1, -1),  # coefficients for testing a within b2
+                  "contr 03"=c(1, -1, -1,  1))  # coefficients for interaction

# test contrasts without adjusting alpha, two-sided hypotheses
> library(multcomp)                   # for glht()
> summary(glht(aovRes, linfct=mcp(ab=cntrMat), alternative="two.sided"),
+         test=adjusted("none"))
Simultaneous Tests for General Linear Hypotheses
Multiple Comparisons of Means: User-defined Contrasts
Fit: aov(formula = y ~ ab, data = d)

Linear Hypotheses:
              Estimate Std. Error t value Pr(>|t|)
contr 01 == 0  -0.7704     0.7875  -0.978    0.330
contr 02 == 0  -1.0463     0.9067  -1.154    0.251
contr 03 == 0   0.2759     1.2009   0.230    0.819
(Adjusted p values reported -- none method)    

ตอนนี้ตรวจสอบผลลัพธ์ด้วยตนเองสำหรับความคมชัดแรก

> P       <- 2                             # number of levels factor a
> Q       <- 2                             # number of levels factor b
> Njk     <- table(d$ab)                   # cell sizes
> Mjk     <- tapply(d$y, d$ab, mean)       # cell means
> dfSSE   <- sum(Njk) - P*Q                # degrees of freedom error SS
> SSE     <- sum((d$y - ave(d$y, d$ab, FUN=mean))^2)    # error SS
> MSE     <- SSE / dfSSE                   # mean error SS
> (psiHat <- sum(cntrMat[1, ] * Mjk))      # contrast estimate
[1] -0.7703638

> lenSq <- sum(cntrMat[1, ]^2 / Njk)       # squared length of contrast
> (SE   <- sqrt(lenSq*MSE))                # standard error
[1] 0.7874602

> (tStat <- psiHat / SE)                   # t-statistic
[1] -0.9782893

> (pVal <- 2 * (1-pt(abs(tStat), dfSSE)))  # p-value
[1] 0.3303902

3
ขอขอบคุณ!!! คุณเพิ่งตอบคำถามที่ว่าสองเทอมของสถิติระดับบัณฑิตศึกษาไม่ได้ ฉันเคยพิจารณาใช้ anova ทางเดียวมาก่อน แต่ไม่พบคำยืนยันใด ๆ ว่านี่เป็นวิธีการที่ถูกต้องตามกฎหมาย
f1r3br4nd

@ f1r3br4nd มันถูกต้องเนื่องจากความผิดพลาดของ MS นั้นเท่ากันในแบบทางเดียวที่เกี่ยวข้องและการออกแบบแบบสองทางดั้งเดิม
caracal

คำถามติดตามหนึ่งคำถามสุดท้ายถ้าฉัน: การโต้ตอบแบบสองทางจะทำให้การโต้ตอบของตัวแปรจำนวนมากเป็นอย่างไร ถ้าฉันมีเทอมA B C ฉันจะสร้างมันขึ้นมาจาก A: B = (A | B = 1 - A | B = 2), C: B = (C | B = 1 - C | B = 2 ) A: B: C = A: B - C: B และอื่น ๆ
f1r3br4nd

2
@ f1r3br4nd ในการออกแบบ 2x2x2 มีความแตกต่างระหว่างA B C ที่ไม่ซ้ำกัน(เช่นมีเพียงหนึ่งในกรณี 2x2) สัมประสิทธิ์ในการโต้ตอบA A B C จะต้องรวมกับศูนย์เหนือแถว (A), คอลัมน์ (B) และระนาบ (C) ใน "cube ออกแบบ" หากคำสั่งซื้อของเซลล์ในการออกแบบทางเดียวที่เกี่ยวข้องเป็นแล้วค่าสัมประสิทธิ์ที่มีa1.b1.c1, a2.b1.c1, a1.b2.c1, a2.b2.c1, a1.b1.c2, a2.b1.c2, a1.b2.c2, a2.b2.c2 c(1, -1, -1, 1, -1, 1, 1, -1)หากคุณมีมากกว่าสองกลุ่มในปัจจัยของคุณความแตกต่างทั้งหมดตามกฎผลรวมเป็นศูนย์คือความแตกต่างระหว่างการโต้ตอบ 3 ทาง
caracal
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.