我正在使用 R 库中的函数survey
,并且根据Stackoverflow 上的这个示例,我使用bquote()
andas.name()
动态构造用于指定变量的公式。
这适用于svytable()
,但不适用于svychisq()
。例如:
library(survey)
data(api)
dstrat<-svydesign(id=~1,strata=~stype, weights=~pw, data=apistrat, fpc=~fpc)
colvar <- 'sch.wide'
rowvar <- 'awards'
svytable(bquote(~.(as.name(rowvar)) + .(as.name(colvar)) ), dstrat)
sch.wide
awards No Yes
No 1065.69 1170.74
Yes 0.00 3957.57
svychisq(bquote(~.(as.name(rowvar)) + .(as.name(colvar)) ), dstrat)
terms.default(formula) 中的错误:没有术语组件或属性
我可以使这个动态变量规范更健壮,以便svychisq()
选择正确的术语吗?