R tương đương với tùy chọn cụm khi sử dụng hồi quy nhị thức âm


10

Tôi đang cố gắng sao chép công việc của một đồng nghiệp và đang chuyển phân tích từ Stata sang R. Các mô hình cô ấy sử dụng tùy chọn "cụm" trong hàm nbreg để phân cụm các lỗi tiêu chuẩn.

Xem http://repec.org/usug2007/crse.pdf để biết mô tả khá đầy đủ về những gì và tại sao của tùy chọn này

Câu hỏi của tôi là làm thế nào để gọi tùy chọn tương tự này cho hồi quy nhị thức âm trong R?

Mô hình chính trong bài báo của chúng tôi được chỉ định trong Stata như sau

 xi: nbreg cntpd09 logpop08 pcbnkthft07 pccrunion07 urbanpop pov00 pov002 edu4yr ///
 black04 hispanic04 respop i.pdpolicy i.maxloan rollover i.region if isser4 != 1,   
 cluster(state)

và tôi đã thay thế điều này bằng

pday<-glm.nb(cntpd09~logpop08+pcbnkthft07+pccrunion07+urbanpop+pov00+pov002+edu4yr+
black04+hispanic04+respop+as.factor(pdpolicy)+as.factor(maxloan)+rollover+
as.factor(region),data=data[which(data$isser4 != 1),])

mà rõ ràng là thiếu các mảnh lỗi cụm.

Có thể làm một bản sao chính xác? Nếu vậy thì thế nào? Nếu không, một số lựa chọn thay thế hợp lý là gì?

Cảm ơn

[Chỉnh sửa] Như đã lưu ý trong các nhận xét, tôi đã hy vọng một giải pháp không đưa tôi vào vương quốc của các mô hình đa cấp. Mặc dù việc đào tạo của tôi cho phép tôi thấy rằng những điều này nên có liên quan, nhưng đó là một bước nhảy vọt hơn là tôi cảm thấy thoải mái khi tự mình thực hiện. Vì vậy, tôi tiếp tục đào và tìm thấy liên kết này: http://landroni.wordpress.com/2012/06/02/fama-macbeth-and-cluster-robust-by-firm-and-time-stiteria-errors-in- r /

chỉ ra một số mã khá đơn giản để làm những gì tôi muốn:

library(lmtest)
pday<-glm.nb(cntpd09~logpop08+pcbnkthft07+pccrunion07+urbanpop+pov00+pov002+edu4yr+
 black04+hispanic04+respop+as.factor(pdpolicy)+as.factor(maxloan)+rollover+
 as.factor(region),data=data[which(data$isser4 != 1),])
summary(pday)

coeftest(pday, vcov=function(x) vcovHC(x, cluster="state", type="HC1"))

Điều này không sao chép kết quả từ phân tích trong Stata, có lẽ vì nó được thiết kế để hoạt động trên OLS chứ không phải nhị thức âm. Vì vậy, việc tìm kiếm tiếp tục. Bất kỳ con trỏ về nơi tôi đang đi sai sẽ được đánh giá cao


3
Bạn có thể thấy ghi chú của Ben Bolker hữu ích ở đây.
đánh dấu


FYI ở đây là một định nghĩa về các lỗi tiêu chuẩn phân cụm mạnh mẽ của Stata. Họ không có vẻ khó khăn để thực hiện. IMO bạn có thể tốt hơn với các lỗi tiêu chuẩn bootstrapping hoặc jackknifed (xem trợ giúp trên vce ). Tôi không thể đề xuất bất kỳ gói R nào. Chúc may mắn khi tìm được người thay thế!
Andy W

Cảm ơn @fmark - những bình luận rất hữu ích, tốt hơn nhiều so với "câu trả lời" của tôi và tôi đã cập nhật nó cho phù hợp.
Peter Ellis

Cảm ơn tất cả. Tôi nghĩ rằng câu trả lời ngắn cho câu hỏi của tôi là không có sự thay thế đơn giản (ví dụ, một chức năng được tạo sẵn thay thế chính xác tùy chọn cụm). Rõ ràng ai đó có nhiều kinh nghiệm hơn có thể nhìn thấy con đường thông qua ghi chú của Ben Bolker, nhưng nó đưa tôi đến lãnh thổ mới nơi tôi không thể chắc chắn mình đã nhận được các tuyên bố công thức chính xác. Tôi không chắc cách thích hợp để nói "Cảm ơn" mà không chấp nhận câu trả lời là gì, nhưng bạn có lời cảm ơn của tôi, và những thiếu sót là của riêng tôi.
csfowler

Câu trả lời:



1

Đây không phải là một câu trả lời thỏa đáng ...

Tôi đã không tự mình thử nhưng có vẻ như gói glmmADMB có thể làm những gì bạn muốn.

Tôi sẽ xấu hổ chèn ép từ nhận xét của @ fmark về câu hỏi và đồng ý với anh ta rằng các ghi chú của Ben Bolker là hữu ích, như câu hỏi trước đó , không hoàn toàn trùng lặp nhưng bao gồm các vấn đề rất giống nhau.

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.