svyrepdesign和svyglm错误“所有变量必须在设计参数中”

46scxncf  于 2023-05-20  发布在  其他
关注(0)|答案(1)|浏览(1206)

在处理复杂的测量数据时,我使用此R语句对数据集中的观测值应用权重。
我遇到一个消息错误:使用svyglm运行广义线性模型时,所有变量必须包含在参数中
如果变量后来被添加到数据集(data_covid)中,svrepdesign(design1)是否会在设置svrepdesign后使用添加的新变量进行更新?

design1 <- svrepdesign(
    weights = ~CPWWWGT, 
    repweights = "CPWW[001-100]+",
    type = "Fay",
    rho = 0.3,
    data = data_covid,
    combined.weights = TRUE
    )

   Error in svyglm.survey.design (number_symptoms ~ age, design = design1, : all 
   variables must be in design= argument
j2datikz

j2datikz1#

如果变量后来被添加到数据集(data_covid)中,svrepdesign(design1)是否会在设置svrepdesign后使用添加的新变量进行更新?
不需要。您需要在创建设计对象之前添加它们,或者使用update函数在设计对象内部创建它们,例如

data(api)
dstrat<-svydesign(id=~1,strata=~stype, weights=~pw, data=apistrat,
fpc=~fpc)
dstrat<-update(dstrat, apidiff=api00-api99)

如果要检查变量是否在设计对象中,请使用colnames函数,例如:

> colnames(dclus1)
 [1] "cds"      "stype"    "name"     "sname"    "snum"     "dname"    "dnum"    
 [8] "cname"    "cnum"     "flag"     "pcttest"  "api00"    "api99"    "target"  
[15] "growth"   "sch.wide" "comp.imp" "both"     "awards"   "meals"    "ell"     
[22] "yr.rnd"   "mobility" "acs.k3"   "acs.46"   "acs.core" "pct.resp" "not.hsg" 
[29] "hsg"      "some.col" "col.grad" "grad.sch" "avg.ed"   "full"     "emer"    
[36] "enroll"   "api.stu"  "fpc"      "pw"

相关问题