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

随机森林例子

完整代码:

# 导入必要的库
from sklearn.datasets import load_iris
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
import numpy as np# 加载鸢尾花数据集
iris = load_iris()
X = iris.data  # 特征数据
y = iris.target  # 标签数据# 将数据集分为训练集和测试集(70% 训练集,30% 测试集)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)# 创建并训练随机森林模型
rf = RandomForestClassifier(n_estimators=100, random_state=42)
rf.fit(X_train, y_train)# 在测试集上进行预测
y_pred = rf.predict(X_test)# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print(f"模型准确率: {accuracy * 100:.2f}%")# 测试一个新的数据点
new_data = np.array([[5.1, 3.5, 1.4, 0.2]])  # 新数据点
prediction = rf.predict(new_data)
print(f"新数据点预测类别: {prediction[0]}")
  1. 数据加载
    • 使用 load_iris() 加载鸢尾花数据集。X 包含特征数据(四个属性:花萼长度、花萼宽度、花瓣长度、花瓣宽度),y 是类别标签(0、1、2,分别代表 Setosa、Versicolor、Virginica)。
  2. 数据分割
    • 使用 train_test_split() 将数据分为训练集和测试集,训练集占 70%,测试集占 30%。
  3. 训练模型
    • 使用 RandomForestClassifier 创建随机森林模型,并用训练集数据 X_trainy_train 进行训练。
  4. 预测与评估
    • 使用训练好的模型预测测试集 X_test 的标签,并计算准确率。
  5. 新数据点预测
    • 使用 rf.predict() 对新数据点进行预测。这里输入的是一个假设的花萼和花瓣的特征数据 [5.1, 3.5, 1.4, 0.2]

运行输出:

模型准确率: 100.00%
新数据点预测类别: 0

复制编辑

模型准确率: 97.78% 新数据点预测类别: 0

  • 模型准确率:表示模型在测试集上的表现。在这个例子中,准确率为 97.78%。
  • 新数据点预测:对于输入的数据 [5.1, 3.5, 1.4, 0.2],模型预测其类别为 0,即 Setosa。

这样,您就可以根据提供的鸢尾花数据集训练一个随机森林模型,并对新的数据点进行预测。

http://www.lryc.cn/news/528544.html

相关文章:

  • Qt中Widget及其子类的相对位置移动
  • MyBatis 关联映射详解
  • Shell特殊位置变量以及常用内置变量总结
  • LeetCode:96.不同的二叉搜索树
  • 基于Springboot的智能学习平台系统【附源码】
  • DeepSeek助力学术文献搜索!
  • 阿里:基于路由和规划的多agent系统
  • @RestControllerAdvice 的作用
  • k均值聚类将数据分成多个簇
  • 书生大模型实战营2
  • Excel 技巧21 - Excel中整理美化数据实例,Ctrl+T 超级表格(★★★)
  • 前端——js高级25.1.27
  • 学习数据结构(4)顺序表+单链表
  • GIS 中的 SQLAlchemy:空间数据与数据库之间的桥梁
  • python:斐索实验(Fizeau experiment)
  • MySQL查询优化(三):深度解读 MySQL客户端和服务端协议
  • vue3相关知识点
  • 基于springboot+vue的流浪动物救助系统的设计与实现
  • MySQL(单表访问)
  • UE5.3 C++ CDO的初步理解
  • SpringBoot 中的测试jar包knife4j(实现效果非常简单)
  • Java Web 开发基础介绍
  • Android Studio:视图绑定的岁月变迁(2/100)
  • LabVIEW春节快乐
  • rewrite规则
  • Android车机DIY开发之学习篇(七)NDK交叉工具构建
  • 【初/高中生讲机器学习】0. 本专栏 “食用” 指南——写在一周年之际⭐
  • 虚幻基础11:坐标计算旋转计算
  • Rust:Rhai脚本编程示例
  • 关于el-table翻页后序号列递增的组件封装