【发布时间】:2014-09-02 19:11:00
【问题描述】:
我正在尝试编写一个代码,该代码将显示变量混合组合的回归系数。每次回归后,应将另一个变量添加到回归中,因此最后我将得到一个列表,显示每个回归的系数.我想在每个回归中只允许 1-4 个变量。 这是我的示例数据:
dat <- read.table(text = " var1 var2 var3 var4
0 3 9 7
1 3 8 4
1 1 2 8
0 1 2 3
0 1 8 3
1 6 1 2
0 6 7 1
1 6 1 5
0 5 9 7
1 3 8 7
1 4 2 7
0 1 2 3
0 7 6 3
1 6 1 1
0 6 3 9
1 6 1 1 ",header = TRUE)
通过使用以下代码,我设法得到一个列表,显示特定变量 (var1) 和其他变量之间的回归系数:
t(sapply(setdiff(names(dat),"var1"),
function(x) coef(glm(reformulate(x,response="var1"),
data=dat,family=binomial(link='logit')))))
这是输出:
(Intercept) var2
var2 -0.56394149 0.13865097
var3 1.28295290 -0.29798823
var4 0.08075091 -0.01819781
但是,我想添加使用变量组合的回归,并将结果连同它的 p 值一起显示在表格中,例如:
(Intercept) var2 var3 var4 p-value
var2 -0.56394149 0.13865097 0.02
var3 1.28295290 -0.29798823 0.01
var4 0.08075091 -0.01819781 0.2
var2+var3
var2+var4
var3+var4
var2+var3+var4
任何想法怎么做?谢谢
【问题讨论】:
-
p 值究竟应该代表什么?这应该来自什么零假设?
-
空模型是每个回归的 p 值的基础
标签: r logistic-regression