gpt4 book ai didi

r - 在 plyr 调用中使用 svyglm

转载 作者:行者123 更新时间:2023-12-04 11:58:24 27 4
gpt4 key购买 nike

这显然与 R 的 survey package 不同。 .我正在尝试使用 llply来自 plyr package列出svyglm楷模。下面是一个例子:

library(survey)
library(plyr)

foo <- data.frame(y1 = rbinom(50, size = 1, prob=.25),
y2 = rbinom(50, size = 1, prob=.5),
y3 = rbinom(50, size = 1, prob=.75),
x1 = rnorm(50, 0, 2),
x2 = rnorm(50, 0, 2),
x3 = rnorm(50, 0, 2),
weights = runif(50, .5, 1.5))

我的因变量列号列表
dvnum <- 1:3

表示此样本中没有聚类或分层
wd <- svydesign(ids= ~0, strata= NULL, weights= ~weights, data = foo)

单个 svyglm 调用有效
svyglm(y1 ~ x1 + x2 + x3, design= wd)

llply将列出基本 R glm楷模
llply(dvnum, function(i) glm(foo[,i] ~ x1 + x2 + x3, data = foo))

但是 llply当我尝试将此方法应用于 svyglm 时,会引发以下错误
llply(dvnum, function(i) svyglm(foo[,i] ~ x1 + x2 + x3, design= wd))

Error in svyglm.survey.design(foo[, i] ~ x1 + x2 + x3, design = wd) :
all variables must be in design= argument

所以我的问题是:我如何使用 llplysvyglm ?

最佳答案

DWin 对正确的公式发表了评论。
reformulate会这样做。

dvnum <- names(foo)[1:3]

llply(dvnum, function(i) {
svyglm(reformulate(c('x1', 'x2', 'x3'),response = i), design = wd)})

关于r - 在 plyr 调用中使用 svyglm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9573893/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com