R语言进行集成学习算法:随机森林
创始人
2024-12-27 01:35:58
0
# 10.4 集成学习及随机森林 # 导入car数据集 car <- read.table("data/car.data",sep = ",") # 对变量重命名 colnames(car) <- c("buy","main","doors","capacity",                    "lug_boot","safety","accept") # 随机选取75%的数据作为训练集建立模型,25%的数据作为测试集用来验证模型 library(caret) library(ggplot2) library(lattice) # 构建训练集的下标集 ind <- createDataPartition(car$accept,times=1,p=0.75,list=FALSE)  # 构建测试集数据好训练集数据 carTR <- car[ind,] carTE <- car[-ind,] carTR<- within(carTR,accept <- factor(accept,levels=c("unacc","acc","good","vgood"))) carTE<- within(carTE,accept <- factor(accept,levels=c("unacc","acc","good","vgood")))   # 使用adabag包中的bagging函数实现bagging算法 #install.packages("adabag") library(adabag) bagging.model <- bagging(accept~.,data=carTR)  # 使用adabag包中的boosting函数实现boosting算法 boosting.model <- boosting(accept~.,data=carTR)  # 使用randomForest包中的randomForest函数实现随机森林算法 #install.packages("randomForest") library(randomForest) randomForest.model <- randomForest(accept~.,data=carTR,ntree=500,mtry=3)  # 预测结果,并构建混淆矩阵,查看准确率 # 构建result,存放预测结果 result <- data.frame(arithmetic=c("bagging","boosting","随机森林"),                      errTR=rep(0,3),errTE=rep(0,3)) for(i in 1:3){   # 预测结果   carTR_predict <- predict(switch(i,bagging.model,boosting.model,randomForest.model),                            newdata=carTR) # 训练集数据   carTE_predict <- predict(switch(i,bagging.model,boosting.model,randomForest.model),                            newdata=carTE) # 测试集数据   # 构建混淆矩阵   tableTR <- table(actual=carTR$accept,                    predict=switch(i,carTR_predict$class,carTR_predict$class,carTR_predict))   tableTE <- table(actual=carTE$accept,                    predict=switch(i,carTE_predict$class,carTE_predict$class,carTE_predict))   # 计算误差率   result[i,2] <- paste0(round((sum(tableTR)-sum(diag(tableTR)))*100/sum(tableTR),                               2),"%")   result[i,3] <- paste0(round((sum(tableTE)-sum(diag(tableTE)))*100/sum(tableTE),                               2),"%") } # 查看结果 result 

相关内容

热门资讯

今日!wpk有作弊吗,科乐辅助... 今日!wpk有作弊吗,科乐辅助工作室,步骤教程(有挂助手)1、首先打开科乐辅助工作室辅助器下载最新版...
第八分钟了解!wepoker私... 第八分钟了解!wepoker私人局可以透视,pokemmo手机脚本辅助器,秘籍教程(有挂讲解)1、下...
第4分钟辅助!新芒果监利开机贴... 第4分钟辅助!新芒果监利开机贴吧(辅助挂)好像真的有辅助挂(有挂存在)1、新芒果监利开机贴吧模拟器是...
现场直击!wpk辅助器,大菠萝... 现场直击!wpk辅助器,大菠萝辅助器,手段教程(有挂助手)1、打开软件启动之后找到中间准星的标志长按...
三分钟了解!哈糖大菠萝可以开挂... 三分钟了解!哈糖大菠萝可以开挂吗,wejoker手机版透视脚本,窍要教程(有挂存在)1、哈糖大菠萝可...
第2分钟辅助!闲逸辅助软件下载... 第2分钟辅助!闲逸辅助软件下载苹果(辅助挂)都是真的是有辅助工具(有挂详情)1、闲逸辅助软件下载苹果...
现有关情况通报如下!aapok... 现有关情况通报如下!aapoker脚本,小逸碰胡脚本,策略教程(发现有挂)1、现有关情况通报如下!a...
第九分钟了解!we poker... 第九分钟了解!we poker辅助器v3.3,wepoker私人局辅助器怎么用,操作教程(有挂方法)...
5分钟辅助!心悦透视辅助器免费... 5分钟辅助!心悦透视辅助器免费(辅助挂)一贯是真的辅助技巧(有挂秘诀)1、心悦透视辅助器免费免费辅助...
攻略辅助挂!epoker免费透... 攻略辅助挂!epoker免费透视脚本,微乐游戏辅助脚本安装,讲义教程(有挂规律)1)微乐游戏辅助脚本...