ในทางปฏิบัติให้ncvTest
ใช้ด้านซ้ายของสมการและbptest
ใช้ด้านขวาโดยค่าเริ่มต้น
หมายความว่าในกรณีของY ~ X
การทดสอบทั้งสองจะให้ผลลัพธ์เดียวกัน (เกี่ยวกับstudentize = F
ตัวเลือกของbptest
) แต่ในการวิเคราะห์หลายตัวแปรเช่นY ~ X1 + X2
ผลลัพธ์จะแตกต่างกัน (ตามที่ @ Helix123 ชี้ให้เห็น)
จากไฟล์วิธีใช้ของncvTest : var.formula
: "สูตรด้านเดียวสำหรับความแปรปรวนข้อผิดพลาดหากไม่ระบุความแปรปรวนข้อผิดพลาดจะขึ้นอยู่กับค่าที่ติดตั้งไว้" ซึ่งหมายความว่าโดยค่าเริ่มต้นค่าติดตั้งจะถูกนำมาใช้ แต่มันยังอนุญาตให้ใช้การรวมกันเชิงเส้นของตัวแปรอิสระ (X1 + X2)
จากไฟล์วิธีใช้ของbptest : varformula
: "โดยค่าเริ่มต้นตัวแปรอธิบายจะถูกนำมาใช้ในรูปแบบการถดถอยหลัก"
ดำเนินการต่อตัวอย่างที่เหมือนกันของ @Francis (ข้อมูลstat500
จากfaraway
แพ็คเกจ):
> mdl_t = lm(final ~ midterm + hw, data = stat500)
การทดสอบ BP โดยใช้ค่าติดตั้ง:
> ncvTest(mdl_t) # Default
Non-constant Variance Score Test
Variance formula: ~ fitted.values
Chisquare = 0.6509135 Df = 1 p = 0.4197863
> bptest(mdl_t, varformula = ~ fitted.values(mdl_t), studentize = F)
Breusch-Pagan test
data: mdl_t
BP = 0.65091, df = 1, p-value = 0.4198
การทดสอบ BP โดยใช้ชุดการทำนายเชิงเส้น:
> ncvTest(mdl_t, var.formula = ~ midterm + hw)
Non-constant Variance Score Test
Variance formula: ~ midterm + hw
Chisquare = 0.7689743 Df = 2 p = 0.6807997
> bptest(mdl_t, studentize = F) # Default
Breusch-Pagan test
data: mdl_t
BP = 0.76897, df = 2, p-value = 0.6808
"ตัวเลือกการรวมกันเชิงเส้น" ช่วยให้สามารถตรวจสอบ heteroskedasticity ที่เกี่ยวข้องกับการพึ่งพาเชิงเส้นของตัวแปรอิสระที่เฉพาะเจาะจง ตัวอย่างเช่นเพียงhw
ตัวแปร:
> ncvTest(mdl_t, var.formula = ~ hw)
Non-constant Variance Score Test
Variance formula: ~ hw
Chisquare = 0.04445789 Df = 1 p = 0.833004
> bptest(mdl_t, varformula = ~ stat500$hw, studentize = F)
Breusch-Pagan test
data: mdl_t
BP = 0.044458, df = 1, p-value = 0.833
สุดท้ายตามที่ @Francis สรุปว่า "ในระยะสั้นการทดสอบ BP ที่ทำให้นักเรียนมีความแข็งแกร่งกว่าแบบทดสอบดั้งเดิม" ฉันมักจะไปด้วยbptest
พร้อมกับstudentize = TRUE
(ค่าเริ่มต้น) และvarformula = ~ fitted.values(my.lm)
เป็นตัวเลือกสำหรับวิธีการเริ่มต้นสำหรับ homoskedasticity
ncvTest
และbptest
ใช้ตัวแปรต่าง ๆ เพื่ออธิบายส่วนที่เหลือให้ดูข้อโต้แย้งvar.formula
และvarformula
ตามลำดับ ผลลัพธ์จะแตกต่างกันเมื่อคุณเพิ่ม regressor อื่นลงในตัวอย่างของคุณ