Python Project

蓝莓数据挖掘与随机森林分析

Back to Projects ↑

这是我 2024 年完成的 Python 数据分析项目。项目基于野生蓝莓相关数据集,使用 pandas 读取 CSV,完成缺失值填补、IQR 异常值处理、标准化、相关性分析、随机森林回归建模和特征重要性解释,目标是练习从原始数据到模型评估的完整数据挖掘流程。

01

数据清洗

使用 SimpleImputer 处理缺失值,结合 IQR 方法过滤异常值,并使用 StandardScaler 标准化数据。

02

探索分析

通过描述性统计和相关性矩阵观察特征分布与变量关系,为后续建模提供依据。

03

随机森林建模

使用 RandomForestRegressor 划分训练集与测试集,完成模型训练、预测和评估。

04

结果解释

输出 MSE、R² 和特征重要性排名,用可视化方式解释哪些变量对预测更敏感。

2024 Python pandas scikit-learn Random Forest CSV Data Mining

Dataset

10,194 条蓝莓观测数据,17 个分析字段

数据集中包含植物克隆大小、传粉昆虫数量、温度范围、降雨天数、结果率、果实质量和种子数量等字段。项目先对数据质量进行检查,再进入预处理、特征分析和模型训练。

Rows 10,194
Fields 17
Model Random Forest
蓝莓数据目标字段分布直方图
Target distribution generated from final.csv.

Pipeline

从 CSV 输入到模型评估的完整流程

这个项目的价值在于把一次数据挖掘作业拆成清晰模块:数据输入、预处理、探索分析、特征选择、模型训练和结果展示。

01

Read CSV

使用 pandas 导入数据,并判断文件是否为空。

02

Preprocess

均值填补缺失值,IQR 过滤异常值,StandardScaler 标准化。

03

Analyze

输出 describe 统计结果,绘制相关性热图。

04

Model

训练随机森林回归模型,评估 MSE 和 R²。

蓝莓数据特征相关性热图
Correlation heatmap for selected blueberry features.

Exploratory Analysis

用相关性热图观察变量关系

相关性分析帮助我理解气象变量、传粉昆虫数量和果实性状之间的线性关系。热图让强相关变量更容易被识别,也为后续特征选择和模型解释提供了可视化依据。

  • 使用 Pearson 相关系数构建特征关系矩阵。
  • 对温度、降雨、果实质量、种子数量等字段进行对比。
  • 用图表把抽象的数值关系转成更直观的判断依据。

Model Result

随机森林回归与特征信号解释

脚本使用 RandomForestRegressor 进行训练和预测,并在报告中记录了 MSE 约 0.287、R² 约 0.99 的测试结果。除模型指标外,项目也输出特征重要性,帮助解释哪些变量对预测更关键。

MSE 0.287
0.99
蓝莓数据特征相关性排名图
Feature signal ranking generated as a lightweight explanatory chart.

What I Practiced

这个项目带来的数据分析基础训练

它不是复杂系统,但完整覆盖了数据分析学习中很核心的一条路径:读取数据、清洗数据、理解变量、训练模型、评估结果和解释模型。

01

数据处理

理解缺失值、异常值和标准化对后续建模稳定性的影响。

02

可视化表达

用热图、分布图和排名图辅助解释数据特征。

03

模型评估

学习用 MSE 和 R² 从误差与拟合度两个角度观察模型效果。

04

报告整理

把背景、数据、方法、结果和应用价值整理成完整分析报告。