簡體   English   中英

使用 lm() 和 svyglm() 在 R 中進行加權線性回歸。 相同的模型,不同的結果

[英]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)

主要是為了確認評論中的內容:

  • lmsvyglm將始終給出相同的點估計,但通常會給出不同的標准誤差。 我在這里使用的術語中,@BenBolker 已經鏈接(謝謝!)lm假設精確權重, svyglm假設采樣權重
  • 對於那個特定的調查數據集,您有抽樣權重並需要svyglm
  • 根據調查的描述,您還希望有一個分層變量,但看起來他們似乎不提供它。 如果他們這樣做了,它將進入svydesign並用於減少svyglm的標准誤差

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM