R ekuivalen dengan opsi cluster saat menggunakan regresi binomial negatif


10

Saya mencoba untuk mereplikasi karya seorang kolega dan saya memindahkan analisis dari Stata ke R. Model yang dia gunakan memanggil opsi "cluster" dalam fungsi nbreg untuk mengelompokkan kesalahan standar.

Lihat http://repec.org/usug2007/crse.pdf untuk deskripsi yang cukup lengkap tentang apa dan mengapa opsi ini

Pertanyaan saya adalah bagaimana menjalankan opsi yang sama ini untuk regresi binomial negatif dalam R?

Model utama dalam makalah kami ditentukan dalam Stata sebagai berikut

 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)

dan saya telah mengganti ini dengan

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),])

yang jelas tidak memiliki bagian kesalahan berkerumun.

Apakah mungkin untuk melakukan replikasi yang tepat? Kalau begitu bagaimana? Jika tidak, apa sajakah alternatif yang masuk akal?

Terima kasih

[Sunting] Seperti tercantum dalam komentar, saya berharap untuk solusi yang tidak membawa saya ke ranah model bertingkat. Sementara pelatihan saya memungkinkan saya untuk melihat bahwa hal-hal ini harus dikaitkan, itu lebih merupakan lompatan daripada saya nyaman mengambil sendiri. Karena itu saya terus menggali dan menemukan tautan ini: http://landroni.wordpress.com/2012/06/02/fama-macbeth-and-cluster-robust-by-firm-and-time-standard-errors-in- r /

yang menunjuk ke beberapa kode yang cukup mudah untuk melakukan apa yang saya inginkan:

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"))

Ini tidak mereplikasi hasil dari analisis di Stata, mungkin karena ini dirancang untuk bekerja pada OLS bukan binomial negatif. Jadi pencarian berlanjut. Setiap petunjuk tentang di mana saya salah akan sangat dihargai


3
Anda mungkin menemukan catatan Ben Bolker berguna di sini.
fmark


FYI di sini adalah definisi kesalahan standar clustered Stata yang kuat. Mereka tampaknya tidak terlalu sulit untuk diimplementasikan. IMO Anda mungkin lebih baik dengan kesalahan standar bootstrap atau jackknifed pula (lihat bantuan pada vce ). Saya tidak bisa menyarankan paket R sekalipun. Semoga berhasil menemukan penggantinya!
Andy W

Terima kasih @ tanda - komentar yang sangat berguna, jauh lebih baik daripada "jawaban" saya dan saya telah memperbaruinya.
Peter Ellis

Terimakasih untuk semua. Saya pikir jawaban singkat untuk pertanyaan saya adalah bahwa tidak ada penggantian langsung (mis., Fungsi pra-dibuat yang persis menggantikan opsi cluster). Jelas seseorang dengan pengalaman lebih banyak dapat melihat jalan melalui catatan Ben Bolker, tetapi itu membawa saya ke wilayah baru di mana saya tidak bisa memastikan saya mendapatkan pernyataan formula yang benar. Saya tidak yakin apa cara yang tepat untuk mengatakan "Terima kasih" tanpa menerima jawaban, tetapi Anda benar-benar berterima kasih, dan kekurangannya adalah milik saya.
csfowler

Jawaban:



1

Ini bukan jawaban yang sepenuhnya memuaskan ...

Saya belum mencobanya sendiri tetapi sepertinya paket glmmADMB mungkin melakukan apa yang Anda inginkan.

Saya tanpa malu-malu akan mencubit dari komentar @ fmark pada pertanyaan dan setuju dengannya bahwa catatan Ben Bolker berguna, seperti pertanyaan sebelumnya , yang bukan duplikat yang persis persis tetapi mencakup masalah yang sangat mirip.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.