setwd("C:/Users/lenovo/Desktop/回归12月1日成果") #设定当前的工作目录
cere=read.table("shuju.txt",header=T)
cere
#使用multinom做多类别logistic回归
library(nnet)
mult.cere<-multinom(y~x1+x2+x3,data=cere)
summary(mult.cere)
mult.cere1<-update(mult.cere,~.-1)#做系数的显著性检验
mult.cere2<-update(mult.cere,~.-x1)
mult.cere3<-update(mult.cere,~.-x2)
mult.cere4<-update(mult.cere,~.-x3)
anova(mult.cere,mult.cere1)
anova(mult.cere,mult.cere2)
anova(mult.cere,mult.cere3)
anova(mult.cere,mult.cere4)
step.cere<-step(mult.cere) #逐步回归选元
summary(step.cere)
exp(coef(step.cere))#用以解释模型
cere.pred<-predict(step.cere) #做预测
cere.pred
table(cere$y,cere.pred)
n<-table(cere$y,cere.pred);n #预测正确的百分比
Category<-levels(cere$y)
Percantage<-c(n[1,1]/sum(n[1,]),n[2,2]/sum(n[2,]),n[3,3]/sum(n[3,]))
rbind(Category,Percantage)
cere.pred2<-predict(step.cere,type="p")
cere.pred2