0

我想使用所有可用变量运行逻辑回归的因变量(在我的数据集中它是:dat$admit),每个回归都有自己的自变量与因变量。我想要得到的结果是每个回归摘要的列表。使用下面提交的数据集应该有 3 个回归。

这是一个样本数据集(其中承认是逻辑回归因变量):

dat <- read.table(text = "
+ female  apcalc    admit       num
+ 0        0        0         7
+ 0        0        1         1
+ 0        1        0         3
+ 0        1        1         7
+ 1        0        0         5
+ 1        0        1         1
+ 1        1        0         0
+ 1        1        1         6",
+                   header = TRUE)

我得到了一个简单线性回归的示例,但是当我尝试将函数从 lm 更改为 glm 时,结果得到了“list()”。
这是原始代码 - 鸢尾花数据集,其中“Sepal.Length”是因变量:

sapply(names(iris)[-1], 
       function(x) lm.fit(cbind(1, iris[,x]), iris[,"Sepal.Length"])$coef)

如何为逻辑回归创建正确的函数?

4

1 回答 1

4
dat <- read.table(text = "
female  apcalc    admit       num
0        0        0         7
0        0        1         1
0        1        0         3
0        1        1         7
1        0        0         5
1        0        1         1
1        1        0         0
1        1        1         6",
               header = TRUE)

这可能有点太浓缩了,但它确实有效。当然,样本数据集太小,无法得到任何合理的答案……

t(sapply(setdiff(names(dat),"admit"),
     function(x) coef(glm(reformulate(x,response="admit"),
                          data=dat,family=binomial))))
于 2014-03-09T15:31:46.117 回答