[英]Weighted linear regression in R with lm() and svyglm(). Same model, different results
我想在 R studio 中應用調查權重進行線性回歸。 我已經看到可以使用lm()
函數來做到這一點,這使我能夠指定我想要使用的權重。 但是,也可以使用svyglm()
函數執行此操作,該函數對調查設計對象中的變量進行回歸,該對象已由所需變量加權。
從理論上講,我認為這兩種回歸模型的結果沒有任何不同的原因,並且 beta 估計值是相同的。 然而,每個模型中的標准誤差是不同的,導致不同的 p 值,從而導致不同的顯着性水平。
哪種型號最合適? 任何幫助將不勝感激。
這是R代碼:
dat <- read.csv("https://raw.githubusercontent.com/LucasTremlett/questions/master/questiondata.csv")
model.weighted1 <- lm(DV~IV1+IV2+IV3, data=dat, weights = weight)
summary(model.weighted1)
dat.weighted<- svydesign(ids = ~1, data = dat, weights = dat$weight)
model.weighted2<- svyglm(DV~IV1+IV2+IV3, design=dat.weighted)
summary(model.weighted2)
主要是為了確認評論中的內容:
lm
和svyglm
將始終給出相同的點估計,但通常會給出不同的標准誤差。 在我在這里使用的術語中,@BenBolker 已經鏈接(謝謝!) , lm
假設精確權重, svyglm
假設采樣權重svyglm
svydesign
並用於減少svyglm
的標准誤差
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.