Hệ số mô hình thử nghiệm (độ dốc hồi quy) so với một số giá trị


20

Trong R, khi tôi có một (tổng quát) mô hình tuyến tính ( lm, glm, gls, glmm, ...), làm thế nào tôi có thể kiểm tra hệ số (độ dốc hồi quy) đối với bất kỳ giá trị khác 0? Trong bản tóm tắt của mô hình, kết quả kiểm tra t của hệ số được tự động báo cáo, nhưng chỉ để so sánh với 0. Tôi muốn so sánh nó với giá trị khác.

Tôi biết tôi có thể sử dụng một thủ thuật với reparametrizing y ~ xnhư y - T*x ~ x, nơi Tlà giá trị thử nghiệm, và chạy mô hình reparametrized này, nhưng tôi tìm kiếm giải pháp đơn giản hơn, mà có thể làm việc trên mô hình ban đầu.


Câu trả lời:


17

Đây là một giải pháp rộng hơn sẽ hoạt động với bất kỳ gói nào hoặc ngay cả khi bạn chỉ có đầu ra hồi quy (chẳng hạn như từ một tờ giấy).

Lấy hệ số và sai số chuẩn của nó.

Tính . Df cho giống như trong thử nghiệm với .t=β^βH0s.e.(β^)tH0:β=0


1
Cảm ơn Glen, tôi biết điều này từ [câu trả lời tuyệt vời này]. Nhưng làm thế nào tôi có thể nhận được giá trị p từ giá trị t?
Tò mò

2
@Cquilpt()
affine

@Cquil: Như Affine nói là hàm R pt - hoặc bất cứ thứ gì khác cung cấp cho bạn giá trị của t cdfs. Nhiều gói có những thứ này, và có các bảng t có sẵn rộng rãi.
Glen_b -Reinstate Monica

Sẽ thật tuyệt nếu lm, lmer và những người khác chấp nhận một tham số thử nghiệm khác với 0 trực tiếp.
skan

@skan nghĩa đen là một dòng mã R duy nhất để có giá trị p; sẽ là một vấn đề đơn giản để viết một hàm nhỏ để lấy đầu ra của tóm tắt.lm và tạo một bảng mới theo thông số kỹ thuật chính xác của bạn.
Glen_b -Reinstate Monica

10

Bạn có thể sử dụng thử nghiệm t đơn giản theo đề xuất của Glen_b hoặc thử nghiệm Wald tổng quát hơn.

Kiểm tra Wald cho phép kiểm tra nhiều giả thuyết trên nhiều tham số. Nó được xây dựng dưới dạng: trong đó R chọn (kết hợp) các hệ số và q chỉ ra giá trị được kiểm tra, là hệ số hồi quy chuẩn.Rβ= =qβ

Trong ví dụ của bạn, khi bạn chỉ có một giả thuyết về một tham số, R là một vectơ hàng, với giá trị là một cho tham số trong câu hỏi và 0 ở nơi khác, và q là một vô hướng với hạn chế để kiểm tra.

Trong R, bạn có thể chạy thử nghiệm Wald với hàm linearHypothesis () từ gói xe . Giả sử bạn muốn kiểm tra xem hệ số thứ hai (được biểu thị bằng giả thuyết đối số.matrix ) có khác 0,1 hay không (đối số 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

Đối với thử nghiệm t, chức năng này thực hiện thử nghiệm t được hiển thị bởi 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

Hãy để chúng tôi đảm bảo rằng chúng tôi đã thực hiện đúng quy trình bằng cách so sánh Wald, kiểm tra t và kiểm tra t mặc định của chúng tôi, với giả thuyết chuẩn rằng hệ số thứ hai bằng không:

> 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

Bạn sẽ nhận được kết quả tương tự với ba thủ tục.


có vẻ tốt Bạn có thể vui lòng giải thích các hypothesis.matrixtham số?
Tò mò

Tôi không chắc chắn nếu bài kiểm tra Wald làm điều đó. Tôi có nghĩa là sử dụng thử nghiệm t bình thường được báo cáo chuẩn cùng với các tham số, nhưng không phải bằng 0 mà với một số giá trị khác.
Tò mò

@Cpered Hy vọng nó rõ ràng hơn bây giờ?
Matifou

3

Cuối cùng, giải pháp đơn giản nhất là thực hiện việc lặp lại:

gls(I(y - T*x) ~ x, ...)

Điều đó sẽ tạo ra kết quả tương tự?
skan

Nhưng bạn đang trừ đi một cái gì đó không độc lập. Nó sẽ không phải là một vấn đề với các giả định cho hình vuông nhỏ nhất hoặc với cộng tuyến? Nó khác với lm (y ~ x + + offset (T * x)) như thế nào?
skan

1
@skan hồi quy có điều kiện trên x, không có sự phụ thuộc ở đó; nó sẽ giống như sử dụng offset.
Glen_b -Reinstate Monica
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.