Otutu11/Project-Complexity-Classification
GitHub: Otutu11/Project-Complexity-Classification
基于决策树分类器的项目复杂度评估系统,通过分析项目时长、团队规模、预算和依赖等特征自动将项目划分为低、中、高三个复杂度等级。
Stars: 53 | Forks: 0
# 项目复杂度分类
本项目是一个基于机器学习的系统,用于根据若干特征将软件或业务项目分类为 **Low**(低)、**Medium**(中)或 **High**(高)复杂度。
## 🔍 特性
每个项目由以下属性定义:
- `Duration_Weeks`:项目持续时长(以周为单位)。
- `Team_Size`:参与项目的人员数量。
- `Budget_K`:预算(以千美元为单位)。
- `Dependencies`:外部/内部依赖项的数量。
- `Stakeholders`:涉及的利益相关者数量。
目标标签是 `Complexity`,可能的取值为:
- `Low`
- `Medium`
- `High`
## 🧠 模型
一个 **Decision Tree Classifier**(决策树分类器)在通过真实范围和评分公式生成的合成数据上进行了训练。该模型根据项目的特征预测其复杂度等级。
## 📁 文件
- `project_complexity_classifier.py` — 包含数据生成、模型训练和评估的 Python 脚本。
- `project_complexity_data.xlsx` — 包含合成项目数据的 Excel 文件。
- `README.md` — 本文件。
## 📊 预测示例
```
example_project = [[12, 10, 250, 5, 4]]
predicted = model.predict(example_project)
print(predicted[0]) # Output: 'Medium' (for example)
🚀 Getting Started
Requirements
Python 3.8+
pandas
numpy
scikit-learn
openpyxl (for Excel support)
Installation
pip install pandas numpy scikit-learn openpyxl
Run the script
python project_complexity_classifier.py
✅ Output
Model evaluation using a classification report.
Printed prediction for an example project.
Synthetic data saved as an Excel file for exploration.
📌 Notes
The synthetic data is generated with random but realistic values.
The complexity scoring formula is simple and can be customized as needed.
This is a demo project and can be extended with real project datasets.
📬 Contact me
Github: https://github.com/Otutu11
Name: Otutu Anslem
```
标签:Apex, BSD, IT治理, Linux 内核安全, PMP, Python, Scikit-learn, 企业级应用, 决策树, 商业智能, 复杂度分类, 数据挖掘, 数据科学, 数据管道, 无后门, 机器学习, 算法模型, 结构化数据, 自动化分类, 资源配置, 资源验证, 软件工程, 辅助决策, 逆向工具, 项目管理, 预测分析