用R中的逻辑回归显示因子和水平

时间:2013-05-21 16:36:28

标签: r statistics regression

我有一个数据框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数据框中列出这些内容。

0 个答案:

没有答案