คุณสามารถใช้การทดสอบ t แบบง่าย ๆ ตามที่เสนอโดย Glen_b หรือการทดสอบ Wald ทั่วไป
R β= qβเป็นค่าสัมประสิทธิ์ regresison มาตรฐาน
ในตัวอย่างของคุณที่คุณมีสมมติฐานเพียงข้อเดียวในหนึ่งพารามิเตอร์ R คือเวกเตอร์แถวที่มีค่าหนึ่งสำหรับพารามิเตอร์ในคำถามและศูนย์อื่น ๆ และ q เป็นสเกลาร์ที่มีข้อ จำกัด ในการทดสอบ
ในการวิจัยคุณสามารถเรียกใช้การทดสอบ Wald ด้วยฟังก์ชั่linearHypothesis ()จากแพคเกจรถ ให้เราบอกว่าคุณต้องการตรวจสอบว่าสัมประสิทธิ์ที่สอง (ระบุโดยอาร์กิวเมนต์hypothesis.matrix ) แตกต่างจาก 0.1 (อาร์กิวเมนต์rhs ):
reg <- lm(freeny)
coef(reg)
# wald test for lag.quarterly.revenue =0.1
>library(car)
>linearHypothesis(reg, hypothesis.matrix = c(0, 1, rep(0,3)), rhs=0.1)
#skip some result, look at last value on last row, of Pr(>F)
Res.Df RSS Df Sum of Sq F Pr(>F)
1 35 0.0073811
2 34 0.0073750 1 6.0936e-06 0.0281 0.8679
สำหรับการทดสอบแบบ t ฟังก์ชันนี้ใช้การทดสอบแบบทีแสดงโดย Glen_b:
ttest <- function(reg, coefnum, val){
co <- coef(summary(reg))
tstat <- (co[coefnum,1]-val)/co[coefnum,2]
2 * pt(abs(tstat), reg$df.residual, lower.tail = FALSE)
}
> ttest(reg, 2,0.1)
[1] 0.8678848
ขอให้เราตรวจสอบให้แน่ใจว่าเราได้ขั้นตอนที่ถูกต้องโดยการเปรียบเทียบ Wald, t-test ของเรา, และ T-test เริ่มต้นสำหรับสมมติฐานมาตรฐานที่สัมประสิทธิ์ที่สองคือศูนย์:
> linearHypothesis(reg, hypothesis.matrix = c(0, 1, rep(0,3)), rhs=0)[["Pr(>F)"]][2]
[1] 0.3904361
> ttest(reg, 2,0)
[1] 0.3904361
## The 'right' answer from R:
> coef(summary(reg))[2,4]
[1] 0.3904361
คุณควรได้ผลลัพธ์เดียวกันกับสามขั้นตอน