R glm.fit:拟合概率数值为0或1
我对数据科学和R相当陌生,所以请对我耐心:) 我想做的是在之后做一个逻辑回归模型和混淆矩阵,但我得到以下警告信息: glm.fit:拟合概率数值为0或1 我有14个解释变量和1个用于信贷批准的二进制目标变量(未批准0,已批准1)R glm.fit:拟合概率数值为0或1,r,glm,R,Glm,我对数据科学和R相当陌生,所以请对我耐心:) 我想做的是在之后做一个逻辑回归模型和混淆矩阵,但我得到以下警告信息: glm.fit:拟合概率数值为0或1 我有14个解释变量和1个用于信贷批准的二进制目标变量(未批准0,已批准1) creditApproval您可以添加一个样本数据集来重现您的代码吗?该警告是由完全分离引起的,这是逻辑回归中的一个常见问题-尤其是如果您有许多预测因子,并且事件很少发生。问题是,您要求R估计两种结果中只有一种发生的组合的成功概率。在这些情况下,估计概率为0或1,这将简
creditApproval您可以添加一个样本数据集来重现您的代码吗?该警告是由完全分离引起的,这是逻辑回归中的一个常见问题-尤其是如果您有许多预测因子,并且事件很少发生。问题是,您要求R估计两种结果中只有一种发生的组合的成功概率。在这些情况下,估计概率为0或1,这将简化为具有无随机性情况的模型
creditApproval <- read.table(file.choose(), header=TRUE)
summary(creditApproval)
dim(creditApproval)
str(creditApproval)
creditApproval$class <- as.factor(creditApproval$class)
### Setting seed for reproductability
set.seed(2567)
# Normalizing dataset
approvalNORM <- creditApproval
for(i in 1:length(colnames(creditApproval))-1) {
if(class(creditApproval[,i]) == "numeric" || class(creditApproval[,i]) == "integer")
{ minimum<-min(creditApproval[,i])
maximum<-max(creditApproval[,i])
approvalNORM[,i] <- as.vector(scale(creditApproval[,i],center=minimum,scale=maximum-minimum)) } }
summary(approvalNORM) # Normalization
# Logistic Regression
model <- glm(class ~., family=binomial(link='logit'), data=approvalNORM)
summary(model)