ฉันสงสัยว่าฉันขาดอะไรบางอย่างที่เห็นได้ชัด แต่คุณทำสถิตินี้ด้วย ANCOVA ไม่ได้เหรอ? ปัญหาที่สำคัญคือความลาดชันของการถดถอยทั้งสองครั้งนั้นมีข้อผิดพลาด มันเป็นค่าประมาณความลาดชันของประชากรในวงกว้าง หากข้อกังวลคือว่าเส้นถดถอยสองเส้นนั้นขนานกันหรือไม่ในประชากรก็ไม่สมเหตุสมผลที่จะเปรียบเทียบกับโดยตรงเพื่อให้ได้ความเท่าเทียมกันที่แน่นอน ทั้งคู่มีข้อผิดพลาด / ความไม่แน่นอนที่ต้องนำมาพิจารณาa1a2
ถ้าเราคิดถึงเรื่องนี้จากมุมมองทางสถิติและเราสามารถรวมข้อมูลในและสำหรับชุดข้อมูลทั้งสองด้วยวิธีที่มีความหมาย (เช่นและในทั้งสองชุดนั้นมาจากประชากรสองกลุ่มที่มีช่วงใกล้เคียงกันสำหรับทั้งสอง ตัวแปรมันเป็นเพียงความสัมพันธ์ระหว่างพวกเขาที่แตกต่างกันในสองประชากร) จากนั้นเราสามารถใส่สองโมเดลต่อไปนี้:xYxY
Y^=ข0+ข1x +ข2ก.
และ
Y^=ข0+ข1x +ข2ก.+ข3x กรัม
โดยที่เป็นค่าสัมประสิทธิ์ของแบบจำลองและคือการจัดกลุ่มตัวแปร / ปัจจัยซึ่งบ่งชี้ว่าชุดข้อมูลใดที่การสังเกตแต่ละครั้งเป็นของขผมก.
เราสามารถใช้ตาราง ANOVA หรืออัตราส่วน F เพื่อทดสอบว่าแบบจำลองที่สองและซับซ้อนกว่านั้นเหมาะกับข้อมูลที่ดีกว่าแบบจำลองที่ง่ายกว่าหรือไม่ ง่ายรัฐรูปแบบที่ลาดของทั้งสองสายจะเหมือนกัน ( ) แต่เส้นจะถูกชดเชยจากอีกคนหนึ่งตามจำนวนเงินที่b_2ข1b2
แบบจำลองที่ซับซ้อนยิ่งขึ้นรวมถึงการมีปฏิสัมพันธ์ระหว่างความชันของเส้นและตัวแปรการจัดกลุ่ม หากค่าสัมประสิทธิ์สำหรับคำนี้มีความแตกต่างอย่างมีนัยสำคัญจากศูนย์หรืออัตราส่วน ANOVA / F บ่งชี้ว่ารูปแบบที่ซับซ้อนมากขึ้นเหมาะกับข้อมูลที่ดีกว่าแล้วเราจะต้องปฏิเสธสมมติฐาน Null ว่าเส้นสองเส้นนั้นขนานกัน
นี่คือตัวอย่างใน R โดยใช้ข้อมูลจำลอง ขั้นแรกให้ข้อมูลที่มีความลาดเท่ากัน:
set.seed(2)
samp <- factor(sample(rep(c("A","B"), each = 50)))
d1 <- data.frame(y = c(2,5)[as.numeric(samp)] + (0.5 * (1:100)) + rnorm(100),
x = 1:100,
g = samp)
m1 <- lm(y ~ x * g, data = d1)
m1.null <- lm(y ~ x + g, data = d1)
anova(m1.null, m1)
ซึ่งจะช่วยให้
> anova(m1.null, m1)
Analysis of Variance Table
Model 1: y ~ x + g
Model 2: y ~ x * g
Res.Df RSS Df Sum of Sq F Pr(>F)
1 97 122.29
2 96 122.13 1 0.15918 0.1251 0.7243
ระบุว่าเราไม่สามารถปฏิเสธสมมติฐานว่างของความชันเท่ากันในตัวอย่างของข้อมูลนี้ แน่นอนว่าเราต้องการมั่นใจในตัวเองว่าเรามีพลังเพียงพอที่จะตรวจจับความแตกต่างถ้ามีจริง ๆ เพื่อที่เราจะได้ไม่นำไปสู่ความล้มเหลวในการปฏิเสธโมฆะเนื่องจากขนาดตัวอย่างของเราเล็กเกินไปสำหรับผลที่คาดหวัง
ขณะนี้มีทางลาดต่างกัน
set.seed(42)
x <- seq(1, 100, by = 2)
d2 <- data.frame(y = c(2 + (0.5 * x) + rnorm(50),
5 + (1.5 * x) + rnorm(50)),
x = x,
g = rep(c("A","B"), each = 50))
m2 <- lm(y ~ x * g, data = d2)
m2.null <- lm(y ~ x + g, data = d2)
anova(m2.null, m2)
ซึ่งจะช่วยให้:
> anova(m2.null, m2)
Analysis of Variance Table
Model 1: y ~ x + g
Model 2: y ~ x * g
Res.Df RSS Df Sum of Sq F Pr(>F)
1 97 21132.0
2 96 103.8 1 21028 19439 < 2.2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
ที่นี่เรามีหลักฐานมากมายเทียบกับสมมติฐานว่างดังนั้นเราสามารถปฏิเสธมันได้ในทางเลือก (กล่าวอีกนัยหนึ่งคือเราปฏิเสธสมมติฐานที่ว่าความชันของทั้งสองเส้นเท่ากัน)
เงื่อนไขการโต้ตอบในสองรุ่นที่ฉันติดตั้ง ( ) ให้ความแตกต่างโดยประมาณในความลาดชันสำหรับทั้งสองกลุ่ม สำหรับรุ่นแรกการประมาณความแตกต่างของความลาดชันมีขนาดเล็ก (~ 0.003)b3xg
> coef(m1)
(Intercept) x gB x:gB
2.100068977 0.500596394 2.659509181 0.002846393
และ -test ในเรื่องนี้จะล้มเหลวในการปฏิเสธสมมติฐานว่างว่าความแตกต่างในความลาดชันนี้เป็น 0:t
> summary(m1)
Call:
lm(formula = y ~ x * g, data = d1)
Residuals:
Min 1Q Median 3Q Max
-2.32886 -0.81224 -0.01569 0.93010 2.29984
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.100069 0.334669 6.275 1.01e-08 ***
x 0.500596 0.005256 95.249 < 2e-16 ***
gB 2.659509 0.461191 5.767 9.82e-08 ***
x:gB 0.002846 0.008047 0.354 0.724
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.128 on 96 degrees of freedom
Multiple R-squared: 0.9941, Adjusted R-squared: 0.9939
F-statistic: 5347 on 3 and 96 DF, p-value: < 2.2e-16
หากเราหันไปใช้โมเดลที่พอดีกับชุดข้อมูลที่สองซึ่งเราทำให้ความลาดเอียงของทั้งสองกลุ่มแตกต่างกันเราจะเห็นว่าความแตกต่างโดยประมาณในความลาดชันของทั้งสองเส้นคือ ~ 1 หน่วย
> coef(m2)
(Intercept) x gB x:gB
2.3627432 0.4920317 2.8931074 1.0048653
ความชันสำหรับกลุ่ม "A" คือ ~ 0.49 ( x
ในเอาต์พุตด้านบน) ในขณะที่การรับความชันสำหรับกลุ่ม "B" เราจำเป็นต้องเพิ่มความแตกต่างของความลาดชัน ; ~ 0.49 + ~ 1 = ~ 1.49 นี่ค่อนข้างใกล้เคียงกับความชันที่ระบุสำหรับกลุ่ม "B" ที่ 1.5 -test บนความแตกต่างของความลาดชันนี้ยังแสดงให้เห็นว่าการประเมินความแตกต่างเป็นที่สิ้นสุดออกไปจาก 0:t
> summary(m2)
Call:
lm(formula = y ~ x * g, data = d2)
Residuals:
Min 1Q Median 3Q Max
-3.1962 -0.5389 0.0373 0.6952 2.1072
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.362743 0.294220 8.031 2.45e-12 ***
x 0.492032 0.005096 96.547 < 2e-16 ***
gB 2.893107 0.416090 6.953 4.33e-10 ***
x:gB 1.004865 0.007207 139.424 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.04 on 96 degrees of freedom
Multiple R-squared: 0.9994, Adjusted R-squared: 0.9994
F-statistic: 5.362e+04 on 3 and 96 DF, p-value: < 2.2e-16