我有一个数据框model.vars
,其中包含要执行逻辑回归的离散化数据,如下所示:
for(i in varnames)
{
modelformula = paste("dep_var~ ", as.factor(i))
modelfits[[i]] = glm(as.formula(modelformula),
data=model.vars ,na.action="na.exclude",
family=binomial(link = "logit"))
}
然后使用
将其转换为数据框fits = ldply(modelfits, function(x) {
as.data.frame((coef(summary(x))),
row.names=varnames)})
但是,modelfits
中存储的结果输出不包含指定每个离散化变量的相关级别标签的列。相反,我得到像
.id Estimate Std. Error zscore Pr(>|z|) abs.zscore
1 Twenty_80.age -0.6911487 0.2813814 -2.456270 1.403875e-02 2.4562
2 Ten_80_10.age -1.0021909 0.2682952 -3.735403 1.874144e-04 3.735403
3 Twenty_80.score -0.7023356 0.3315694 -2.118216 3.415679e-02 2.118216
不幸的是,我们需要输出作为数据帧(而不是列表)。添加一个额外的列给我们提供关卡标签的最佳方法是什么?例如,打印出原始modelfits
变量的语句如下:
Coefficients:
(Intercept) Twenty_80.score[ 11, 19) Twenty_80.score[ 19, 31) Twenty_80.score[ 31,312]
我想在上面的fits
数据框中列出这些内容。