Dự án này xây dựng pipeline dữ liệu + phân tích + phát hiện điểm gãy + dự báo trên dữ liệu điểm thi THPT giai đoạn 2023–2025, với mục tiêu dự báo xu hướng 2026.
Lưu ý: thư mục Dashboard/ không nằm trong phạm vi đánh giá (có thể bỏ qua khi chấm môn).
- Chuẩn hóa dữ liệu điểm thi THPT (Raw → Clean) theo cấu trúc thống nhất.
- Phân tích mô tả (EDA) theo môn / khối / tỉnh.
- Kiểm định thống kê (ANOVA / t-test) để kiểm tra khác biệt giữa nhóm.
- Phát hiện điểm gãy (change point) (đặc biệt năm 2025).
- Dự báo 2026 theo:
- môn (Subject)
- khối/tổ hợp (Block/Combination share)
-
Thư mục Clean_Data_2023-2025/:
Subject_Data/,Block_Data/,Province_Data/- mỗi thư mục con
CleanData_<name>/chứa:Export_Analysis_*.csv(summary stats)Export_Distribution_*.csv(phân phối)
-
Notebook:
Notebook/EDA.ipynbNotebook/ChangePoint.ipynbNotebook/Forecast2026.ipynb
-
Report:
Report/ReportProject.ipynb(file duy nhất để trình bày với giảng viên)
PythonProject/
├─ Raw_Data/ # dữ liệu thô 2023–2025
├─ Clean_Data_2023-2025/ # dữ liệu đã export theo cấu trúc chuẩn
├─ Module/ # ETL + Stats (Load/Process/Analysis/Export/ANOVA)
│ ├─ Load_Data.py
│ ├─ Processor_Data.py
│ ├─ Analysis.py
│ ├─ Export.py
│ └─ ANOVA_ttest.py
├─ Model/ # Modeling layer
│ ├─ ChangePoint/ # phát hiện & phân tích điểm gãy
│ │ ├─ __init__.py
│ │ ├─ ChangePointPreparer.py
│ │ ├─ ChangePointDetector.py
│ │ └─ ChangePointAnalyzer.py
│ └─ Forecast/ # dự báo 2026 (theo môn/khối)
│ ├─ __init__.py
│ ├─ ForecastSubjectModel.py
│ └─ ForecastBlockModel.py
├─ Notebook/ # notebook làm việc/triển khai
│ ├─ EDA.ipynb
│ ├─ ChangePoint.ipynb
│ └─ Forecast.ipynb
├─ Report/ # notebook báo cáo
│ └─ ReportProject.ipynb
├─ run_pipeline.py # chạy end-to-end: Load → Process → Export
├─ requirements.txt # dependencies
└─ installation.txt # hướng dẫn cài đặt
Khuyến nghị: Python 3.10+ (Windows/Mac/Linux đều được).
cd PythonProject
python -m venv .venv
# Windows
.venv\Scripts\activate
# macOS/Linux
source .venv/bin/activate
pip install -U pip
pip install -r requirements.txtconda create -n thpt python=3.10 -y
conda activate thpt
pip install -r requirements.txtNếu bạn chỉ chạy code
.py(không mở notebook), có thể bỏjupyter/notebook.
Chạy từ thư mục PythonProject/:
python run_pipeline.pyKết quả export sẽ được ghi vào:
PythonProject/Clean_Data_2023-2025/
jupyter notebook
# hoặc
jupyter labSau đó mở:
Notebook/EDA.ipynbNotebook/ChangePoint.ipynbNotebook/Forecast2026.ipynb
Report/ReportProject.ipynb
Mẹo quan trọng:
Trong Report, nên có 1 cell đầu “Setup paths” để tự nhận project_root và clean_root (tránh lỗi đường dẫn khi người khác chạy).
| Nội dung | File/Module liên quan |
|---|---|
| Load & chuẩn hóa | Module/Load_Data.py, Module/Processor_Data.py |
| Export clean | Module/Export.py, run_pipeline.py |
| EDA theo môn/khối/tỉnh | Module/Analysis.py |
| ANOVA / t-test | Module/ANOVA_ttest.py |
| Change point | Model/ChangePointPreparer.py, ChangePointDetector.py, ChangePointAnalyzer.py |
| Forecast 2026 | Model/ForecastSubjectModel.py, Model/ForecastBlockModel.py |
Bạn cần chạy cell “Setup paths” trước các cell dùng project_root/clean_root.
Chạy lại:
pip install -r requirements.txtChạy lại pipeline:
python run_pipeline.py- Dashboard/ không yêu cầu cho phần chấm môn (có thể bỏ qua).
- Report có thể “lược bớt” bớt hình so với notebook; miễn là report vẫn:
- bám đúng pipeline & code
- có minh họa đủ để giải thích khi bị hỏi.