随机森林-ROC

install.packages(“randomForest”)
library(randomForest)

d0_train=d0[label0<=5,]
d0_test=d0[label0>5,]
d1_train=d1[label1<=5,]
d1_test=d1[label1>5,]
d2_train=d2[label2<=5,]
d2_test=d2[label2>5,]
d3_train=d3[label3<=5,]
d3_test=d3[label3>5,]
d_train=rbind(d0_train,d1_train,d2_train,d3_train)
d_test=rbind(d0_test,d1_test,d2_test,d3_test)

d_train $ y[d_train$y>=1]=1
d_test $ y[d_test$y>=1]=1

d_train $ y= as.factor(d_train$y)
#令Y变为分类数据(改变数据类型) 不再是int

re_rf = randomForest(y~.-id,data=d_train,ntree=50) #建模,森林默认500 棵树
pred_rf=predict(re_rf,newdata=d_test,type=“prob”) #预测

#画ROC曲线
install.packages(“ROCR”)
library(ROCR)
pred<-prediction(pred_rf[,2],d_test$y)
perf<-performance(pred,“tpr”,“fpr”)
plot(perf,colorize=TRUE)

re_rf #看出误判率是5.55%
importance(re_rf) #看变量们的重要度,Gini
varImpPlot(re_rf) #可以画变量重要性的曲线,知道谁重要,贡献大

#ROC曲线下面积AUC,以评价分类器的综合性能,该数值取0-1之间,越大越好
install.packages(“RWeka”)
library(RWeka) #要装Java,用的函数J48
library(RWeka) #数据预处理,分类,回归,聚类,关联规则和可视化的工具

**好网站:**https://www.cnblogs.com/nxld/p/6374945.html

你可能感兴趣的:(随机森林-ROC)