备份:使用随机森林方法用CollegeDistance数据集中的属性预测地区(region)

本次采用CollegeDistance数据集利用随机森林方法,用wage,distance,urban,income进行region的预测。

 

数据集:CollegeDistance

方法:随机森林

# 相关库导入
library(data.table)
library(C50)
library(splitstackshape)
library(rattle)
library(rpart.plot)
library(knitr)

Data <- read.csv('CollegeDistance.csv')
head(Data)
str(Data)
table(Data$region)


#采用数据集中的fcollege、mcollege、home、urban和income属性来预测region
#首先提取出需要使用的列组成新的数据集
Data.use <- Data[,c('wage','distance','urban','income','region')]
#为方便抽样加上一列ID
Data.use$ID <- c(1:nrow(Data.use))
#将数据分为训练集和测试集
set.seed(432)
Data.train <- Data.use[sample(nrow(Data.use),size = round(nrow(Data.use)*(0.7)),replace = FALSE,prob = NULL),]
Data.train <- as.data.frame(Data.train)
Data.test <- Data.use[!(Data.use$ID %in% Data.train$ID),]

# 导入相关库
library(gmodels)
library(ggplot2)
library(lattice)
library(caret)
control <- trainControl(method = "repeatedcv", number = 5, repeats = 2)
set.seed(431)
rfModel <- train(region ~  wage+distance + urban + income, data = Data.test, method = "rf", trControl = control)
region_pred_test <- predict(rfModel, Data.test)
CrossTable(Data.test$region, region_pred_test,
           prop.chisq = FALSE, prop.c = FALSE, prop.r = FALSE,
           dnn = c('actual default', 'predicted default'))






结果:

备份:使用随机森林方法用CollegeDistance数据集中的属性预测地区(region)_第1张图片

100%的正确率,不知道是不是因为加入了distance这种可以连续的属性,但是无所谓,节课,下播,感觉就是用起来 很方便,调包就行。

 最后放上最重要的东西:

备份:使用随机森林方法用CollegeDistance数据集中的属性预测地区(region)_第2张图片

你可能感兴趣的:(嚯茶,随机森林,人工智能,机器学习)