Files
bike-course-design/README.md
2026-06-08 23:15:05 +08:00

56 lines
1.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 共享单车日骑行量预测与可视化系统
## 项目内容
本项目完成《大数据分析技术》课程设计中“基于机器学习的共享单车日骑行量预测与可视化系统”的全部任务:
1. 多模型构建与初步筛选
2. 特征重要性解析
3. 模型评估与 2013 年前 100 天预测输出
4. 轻量级 GUI 预测可视化系统
## 目录说明
- `analyze_bike_sharing.py`:完整数据分析、建模、评估、预测、图表生成脚本
- `bike_demand_gui.py`tkinter 轻量级预测系统
- `generate_report.py`:课程设计报告生成脚本
- `outputs/model_comparison.csv`:模型对比结果
- `outputs/cross_validation_summary.csv`:交叉验证结果
- `outputs/feature_importance.csv`:特征重要性
- `outputs/2013前100天骑行量预测结果.xlsx`:最终预测结果
- `outputs/models/best_bike_demand_model.pkl`:最佳模型文件
- `outputs/figures/`:报告图表
- `outputs/共享单车日骑行量预测课程设计报告.docx`:课程设计报告
## 运行环境
```bash
cd /root/bike_course_design
python3 -m venv .venv
.venv/bin/pip install pymupdf openpyxl pandas matplotlib seaborn scikit-learn python-docx joblib
```
## 重新生成分析结果
```bash
cd /root/bike_course_design
.venv/bin/python analyze_bike_sharing.py
```
## 启动 GUI
```bash
cd /root/bike_course_design
.venv/bin/python bike_demand_gui.py
```
GUI 支持输入季节、年月、节假日、星期、工作日、天气、气温、体感温度、湿度、风速等特征,输出单场景预测值,并可加入多场景对比表。
## 本次运行核心结论
- 数据量731 条历史日度记录,预测集 100 条记录。
- 最佳模型:梯度提升树。
- 测试集指标RMSE 约 651.14MAE 约 449.00R² 约 0.8943。
- 五折交叉验证RMSE 均值约 655.12R² 均值约 0.8819。
- 关键特征:气温、年份、季节、体感温度、湿度。