brglm模型中的错误,带有交互的反向消除:do.call(“glm.control”,control)中的错误:第二个参数必须是列表
使用brglm模型中的错误,带有交互的反向消除:do.call(“glm.control”,control)中的错误:第二个参数必须是列表,r,glm,R,Glm,使用glm拟合模型后,我得到了以下结果: 警告信息: glm.fit:数值为0或1的调整概率** 在谷歌上做了一些研究之后,我尝试了brglm软件包。当我尝试对模型应用反向消除时,我得到以下错误: do.call(“glm.control”,control)中出错:第二个参数必须是列表 我在谷歌上搜索了一下,但什么也没找到 这是我的brglm代码: library(mlbench) #require(Amelia) library(caTools) library(mlr) library(ci
glm
拟合模型后,我得到了以下结果:
警告信息:
glm.fit:数值为0或1的调整概率**
在谷歌上做了一些研究之后,我尝试了brglm
软件包。当我尝试对模型应用反向消除时,我得到以下错误:
do.call(“glm.control”,control)中出错:第二个参数必须是列表
我在谷歌上搜索了一下,但什么也没找到
这是我的brglm
代码:
library(mlbench)
#require(Amelia)
library(caTools)
library(mlr)
library(ciTools)
library(brglm)
data("BreastCancer")
data_bc <- BreastCancer
data_bc
head(data_bc)
dim(data_bc)
#Delete id column
data_bc<- data_bc[,-1]
data_bc
dim(data_bc)
str(data_bc)
# convert all factors columns to be numeric except class.
for(i in 1:9){
data_bc[,i]<- as.numeric(as.character(data_bc[,i]))
}
str(data_bc)
#convert class: benign and malignant to binary 0 and 1:
data_bc$Class<-ifelse(data_bc$Class=="malignant",1,0)
# now convert class to factor
data_bc$Class<- factor(data_bc$Class, levels = c(0,1))
str(data_bc)
model <- brglm(formula = Class~.^2, data = data_bc, family = "binomial",
na.action = na.exclude )
summary(model)
#Backward Elimination:
final <- step(model, direction = "backward")
库(mlbench)
#要求(阿米莉亚)
图书馆(caTools)
图书馆(mlr)
图书馆(ciTools)
图书馆(brglm)
数据(“乳腺癌”)
数据\u bc您可以通过使用brglm2
包来解决此问题,该包将取代brglm
包:
model <- glm(formula = Class~.^2, data = na.omit(data_bc), family = "binomial",
na.action = na.fail, method="brglmFit" )
final <- step(model, direction = "backward")
length(coef(model)) ## 46
length(coef(final)) ## 42
setdiff(names(coef(model)), names(coef(final))
## [1] "Cl.thickness:Epith.c.size" "Cell.size:Marg.adhesion"
## [3] "Cell.shape:Bl.cromatin" "Bl.cromatin:Mitoses"
model您可以通过使用brglm2
包来解决此问题,该包将取代brglm
包:
model <- glm(formula = Class~.^2, data = na.omit(data_bc), family = "binomial",
na.action = na.fail, method="brglmFit" )
final <- step(model, direction = "backward")
length(coef(model)) ## 46
length(coef(final)) ## 42
setdiff(names(coef(model)), names(coef(final))
## [1] "Cl.thickness:Epith.c.size" "Cell.size:Marg.adhesion"
## [3] "Cell.shape:Bl.cromatin" "Bl.cromatin:Mitoses"
model谢谢你的回答。我刚试过。不再显示与brglm一起显示的错误。但现在,即使在应用step之后,我也得到了相同的模型。你有没有其他方法可以推荐?我还删除了缺少值的变量对不起,这不是我得到的。谢谢你的回答。我刚试过。不再显示与brglm一起显示的错误。但现在,即使在应用step之后,我也得到了相同的模型。你有没有其他方法可以推荐?我还删除了缺少值的变量对不起,这不是我得到的。请参见编辑。)