当前位置: 首页 > news >正文

R语言进行集成学习算法:随机森林

# 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

相关文章:

R语言进行集成学习算法:随机森林

# 10.4 集成学习及随机森林 # 导入car数据集 car <- read.table("data/car.data",sep ",") # 对变量重命名 colnames(car) <- c("buy","main","doors","capacity","lug_boot","safety"…...

虚拟机的状态更新

文章目录 虚拟机的更新一、检查虚拟机的配置1.已连接状态2. 保证镜像源挂载 二、进行更新三、其余事项 虚拟机的更新 虚拟机的更新是确保系统软件包和库的更新&#xff0c;以获得最新的修复和改进&#xff1b;如果长期没有打开单机或者集群&#xff0c;可以考虑先进行一次更新…...

基于hive数据库的泰坦尼克号幸存者数据分析

进入 ./beeline -u jdbc:hive2://node2:10000 -n root -p 查询 SHOW TABLES; 删除 DROP TABLE IF EXISTS tidanic; 上传数据 hdfs dfs -put train.csv /user/hive/warehouse/mytrain.db/tidanic 《泰坦尼克号幸存者数据分析》 1、原始数据介绍 泰坦尼克号是当时世界上…...

excel根据数据批量创建并重命名工作表

需求 根据一列数据&#xff0c;批量创建并重命名工作表 做法 1. 右键该sheet&#xff0c;选择查看代码 2. 输入VBA代码 正向创建 Sub create_sheets_by_col()Dim num% 定义为integer*num Application.WorksheetFunction.CountA(Sheet1.Range("A:A")) num是非空…...

智能合约和分布式应用管理系统:技术革新与未来展望

引言 随着区块链技术的不断发展&#xff0c;智能合约和分布式应用&#xff08;DApps&#xff09;逐渐成为数字经济中的重要组成部分。智能合约是一种自执行的协议&#xff0c;能够在预设条件满足时自动执行代码&#xff0c;而无需人工干预或中介机构。这种自动化和信任机制极大…...

Spring MVC 中的拦截器的使用“拦截器基本配置” 和 “拦截器高级配置”

1. Spring MVC 中的拦截器的使用“拦截器基本配置” 和 “拦截器高级配置” 文章目录 1. Spring MVC 中的拦截器的使用“拦截器基本配置” 和 “拦截器高级配置”2. 拦截器3. Spring MVC 中的拦截器的创建和基本配置3.1 定义拦截3.2 拦截器基本配置3.3 拦截器的高级配置 4. Spr…...

MyBatis框架学习笔记(四):动态SQL语句、映射关系和缓存

1 动态 SQL 语句-更复杂的查询业务需求 1.1 动态 SQL-官方文档 &#xff08;1&#xff09;文档地址: mybatis – MyBatis 3 | 动态 SQL &#xff08;2&#xff09;为什么需要动态 SQL 动态 SQL 是 MyBatis 的强大特性之一 使用 JDBC 或其它类似的框架&#xff0c;根据不同条…...

【C++PythonJava】字符处理详细解读_字符_ASCLL码_字母数字转换_算法竞赛_开发语言

文章目录 Beginning1&#xff09;ASCLL 码2&#xff09;大小比较2&#xff09;判断数字字符3&#xff09;字符、数字间的相互转换End Beginning 在 C 中&#xff0c;字符和整数有着密不可分的关系。原因就是在计算机中&#xff0c;字符是以一种较 ASCLL 码的整数存储的。自然&…...

人像视频淡入淡出效果的灵敏检验方法

在视频中经常会有淡入淡出的效果&#xff0c;这可能导致人脸检测在实际人已经离开画面之后仍然触发&#xff0c;特别是在使用基于像素强度变化的检测算法时。为了更精确地裁剪视频&#xff0c;你可以尝试以下几种方法&#xff1a; 使用更复杂的人脸检测模型&#xff1a; 有些…...

Unity UGUI Image Maskable

在Unity的UGUI系统中&#xff0c;Maskable属性用于控制UI元素是否受到父级遮罩组件的影响。以下是关于这个属性的详细说明和如何使用&#xff1a; Maskable属性 Maskable属性&#xff1a; 当你在GameObject上添加一个Image组件&#xff08;比如UI面板或按钮&#xff09;时&…...

SpringCloud | 单体商城项目拆分(微服务)

为什么要进行微服务拆分&#xff1f; 在平常的商城项目中&#xff0c;我们一般的项目结构模块都是将各种业务放在同一个项目文件夹&#xff0c;比如像&#xff1a; 用户&#xff0c;购物车&#xff0c;商品&#xff0c;订单&#xff0c;支付等业务都是放在一起&#xff0c;这样…...

uniapp 如何实现路由拦截,路由守卫

uniapp框架的全局文件&#xff1a;page.json全局文件&#xff0c;官网链接 背景&#xff1a; 通过封装 UniApp 的路由方法&#xff0c;并在封装方法中添加自定义逻辑&#xff0c;可以实现类似 Vue Router 的路由守卫功能。 在 UniApp 框架中&#xff0c;不像 Vue Router 直接支…...

人工智能算法工程师(中级)课程13-神经网络的优化与设计之梯度问题及优化与代码详解

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能算法工程师(中级)课程13-神经网络的优化与设计之梯度问题及优化与代码详解。 文章目录 一、引言二、梯度问题1. 梯度爆炸梯度爆炸的概念梯度爆炸的原因梯度爆炸的解决方案 2. 梯度消失梯度消失的概念梯度…...

Qt/QML学习-ComboBox

QML学习 ComboBox例程视频讲解代码 main.qml import QtQuick 2.15 import QtQuick.Window 2.15 import QtQuick.Controls 2.15Window {width: 640height: 480visible: truetitle: qsTr("ComboBox")ComboBox {id: comboBox// 列表项数据模型model: ListModel {List…...

微服务实战系列之玩转Docker(一)

前言 话说计算机的“小型化”发展&#xff0c;历经了大型机、中型机直至微型机&#xff0c;贯穿了整个20世纪的下半叶。同样&#xff0c;伴随着计算机的各个发展阶段&#xff0c;如何做到“资源共享、资源节约”&#xff0c;也一直是一代又一代计算机人的不懈追求和历史使命。今…...

Java中常见的语法糖

文章目录 概览泛型增强for循环自动装箱与拆箱字符串拼接枚举类型可变参数内部类try-with-resourcesLambda表达式 概览 语法糖是指编程语言中的一种语法结构&#xff0c;它们并不提供新的功能&#xff0c;而是为了让代码更易读、更易写而设计的。语法糖使得某些常见的编程模式或…...

数据库使用SSL加密连接

简介 数据库开通SSL加密连接是确保数据传输过程中安全性的关键措施&#xff0c;它通过加密数据、验证服务器身份、保护敏感信息、维护数据完整性和可靠性&#xff0c;同时满足行业标准和法规要求&#xff0c;进而提升用户体验和信任度&#xff0c;为企业的数据安全和业务连续性…...

华为OD算法题汇总

60、计算网络信号 题目 网络信号经过传递会逐层衰减&#xff0c;且遇到阻隔物无法直接穿透&#xff0c;在此情况下需要计算某个位置的网络信号值。注意:网络信号可以绕过阻隔物 array[m][n]&#xff0c;二维数组代表网格地图 array[i][j]0&#xff0c;代表i行j列是空旷位置 a…...

服务器的rabbitmq的guest账号登不进去

要配置 RabbitMQ 允许 guest 账号从非 localhost 地址登录&#xff0c;需要执行以下步骤&#xff1a; 编辑 RabbitMQ 配置文件&#xff1a; 打开 RabbitMQ 的配置文件&#xff0c;通常位于 /etc/rabbitmq/rabbitmq.conf 或者 /etc/rabbitmq/rabbitmq-env.conf。如果这些文件不存…...

决策树(ID3,C4.5,C5.0,CART算法)以及条件推理决策树R语言实现

### 10.2.1 ID3算法基本原理 ### mtcars2 <- within(mtcars[,c(cyl,vs,am,gear)], {am <- factor(am, labels c("automatic", "manual"))vs <- factor(vs, labels c("V", "S"))cyl <- ordered(cyl)gear <- ordered…...

GitHub Copilot 下月改按量计费,我算了一周的 token 账单

微软上个月官宣&#xff1a;6月1日起&#xff0c;GitHub Copilot 全部计划转向按量计费&#xff08;usage-based pricing&#xff09;。原来每月19美元的订阅费变成19美元的token额度&#xff0c;用完就得充。 我用了一周时间&#xff0c;把自己日常开发中 Copilot、Claude Cod…...

Worldquant研究顾问速通

几天时间速通拿了金牌&#xff0c;中间停了一两周&#xff0c;然后仔细研究了下&#xff0c;学了相关知识&#xff0c;搭建自己ai驱动的工作流后每天大约10分钟设置好任务&#xff0c;可探索到10来个可以提交的alpha&#xff0c;目前产出比大约在1/100&#xff0c;simulate100个…...

SAP财务实操:FBV0/FB08凭证冲销与FBV1预制凭证的完整流程(附BADI增强代码)

SAP财务凭证处理实战&#xff1a;从冲销到增强的全链路解决方案 月末关账前发现凭证金额错误怎么办&#xff1f;批量处理上百张供应商发票如何避免手工录入&#xff1f;这些场景恰恰是SAP财务模块中FBV0、FBV1、FB08等事务代码的核心战场。本文将带您穿透事务代码的表层操作&am…...

手把手教你把Windows虚拟内存文件pagefile.sys从C盘挪走,给SSD系统盘腾出几十G空间

彻底解放C盘空间&#xff1a;Windows虚拟内存文件迁移全指南 你是否遇到过这样的场景&#xff1a;刚装完系统时C盘还剩下大半空间&#xff0c;用着用着却突然弹出"磁盘空间不足"的警告&#xff1f;打开资源管理器一看&#xff0c;一个名为pagefile.sys的"巨无霸…...

避坑指南:在Quartus II里搞定矩阵键盘与数码管,这些细节决定成败(附代码)

Quartus II实战避坑&#xff1a;矩阵键盘与数码管调试的七个致命细节 第一次在FPGA上实现矩阵键盘控制数码管显示时&#xff0c;我遇到了所有初学者都会踩的坑——按下按键后数码管要么毫无反应&#xff0c;要么显示乱码。这不是代码逻辑问题&#xff0c;而是那些教程里从不提及…...

量子机器学习噪声挑战与HPQS混合框架解析

1. 量子机器学习中的噪声挑战与HPQS解决方案量子机器学习(QML)作为量子计算与经典机器学习的交叉领域&#xff0c;正在重新定义我们处理复杂模式识别问题的方式。与传统机器学习不同&#xff0c;QML利用量子态的叠加和纠缠特性&#xff0c;理论上可以在某些特定任务上实现指数级…...

魔兽争霸3终极兼容方案:5分钟解决Win10/Win11运行问题

魔兽争霸3终极兼容方案&#xff1a;5分钟解决Win10/Win11运行问题 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为魔兽争霸3在现代Windows系统上…...

神州细胞递表港交所 创新生物制药领军者构筑A+H双平台全球化版图

5月22日&#xff0c;北京神州细胞生物技术集团股份公司&#xff08;证券代码&#xff1a;688520&#xff0c;证券简称&#xff1a;神州细胞&#xff09;正式向香港联合交易所有限公司递交上市申请&#xff0c;迈出“AH”双资本平台布局的关键一步。公司以科创板上市为根基&…...

VIVE Focus3 Unity开发避坑指南:JDK11.0.22与Wave SDK 4.2集成要点

1. 这不是SDK安装教程&#xff0c;而是新手在Focus3上摔的前七跤Unity新手刚拿到VIVE Focus3设备&#xff0c;满心欢喜点开VIVE Developer Portal下载SDK 4.2&#xff0c;解压、导入、Build、Run——然后卡在黑屏、报错、手势没反应、手柄漂移、甚至Unity编辑器直接崩溃。我带过…...

对比直接购买,使用Taotoken的Token Plan套餐如何节省API成本

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 对比直接购买&#xff0c;使用Taotoken的Token Plan套餐如何节省API成本 1. 成本管理中的常见挑战 对于需要持续调用大模型API的开…...