我有10个具有二元和多类因子的数据集,我使用逻辑回归与R" glm"它预测了班级概率class,prediction(formula,data,type="response")
。我怎样才能获得预测的课程,就像其他模特一样?例如:
df=data.frame(y=c(1,0,0,1),x1=c(1,2,3,4),x2=c(12,13,43,3))
df$y=as.factor(df$y)
testdf=data.frame(y=c(1,1,0,0),x1=c(11,16,65,8),x2=c(3,2,5,0))
testdf$y=as.factor(testdf$y)
model_glm=glm(y~.,data=df,family="binomial")
pred_glm=predict(model_glm,newdata=testdf,type="response")
这将给出概率预测:
> pred_glm
1 2 3 4
2.220446e-16 2.220446e-16 2.220446e-16 2.220446e-16
答案 0 :(得分:0)
我有一些问题与我的数据一起做这件事。为了预测您必须首先创建逻辑回归
lgr= glm(y ~ x1 + x2 +x3...x10, data=df1)
然后你可以从那里预测或玩弄你的模型:
新预测:注意 df1和df2的长度必须相同(如果需要,请添加NAs)
predicts= predict(lgr, newdata= "df2")
然后看到它并将其用于演示,等等。我会把它写到csv
write.csv(predicts, "K:/filelocation/filename.csv")
修改强> 如果尝试根据预测进行分类,则需要进行特异性和灵敏度计算。请参阅:https://stats.stackexchange.com/questions/25389/obtaining-predicted-values-y-1-or-0-from-a-logistic-regression-model-fit/25398#25398?newreg=2f9713d7d60f427d9e123208c39f69f8