# data_analysis **Repository Path**: shikai_neu/data_analysis ## Basic Information - **Project Name**: data_analysis - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-20 - **Last Updated**: 2026-06-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 20 天 Python 数据分析课程代码 本仓库是一个完整的数据分析教学项目,按 `day01` 到 `day20` 拆分每日代码。学生 clone 后可以在 Windows 电脑上使用 VS Code、PyCharm 或命令行运行。 ## 项目内容 - 数据源:Open-Meteo 历史天气 API - 默认数据:上海 2024-01-01 到 2024-06-30 小时级天气数据 - 数据量:约 4368 行 - 网络要求:采集数据不需要代理,不需要账号,不需要 API Key - 建模方法:多元线性回归、逻辑回归 - 输出目录:`reports/feishu_visualization_course/` ## 目录结构 ```text data_analysis/ ├── day01/ 第 1 天代码 ├── day02/ 第 2 天代码 ├── ... ├── day20/ 第 20 天代码 ├── data/raw/ 默认原始数据 ├── reports/ 运行后自动生成,默认不提交 ├── requirements.txt Python 依赖 ├── run_all_days.py 批量运行脚本 └── README.md 使用说明 ``` ## 每天内容 | 天数 | 主题 | |---|---| | Day 01-05 | 数据获取、API 爬虫、数据保存、数据理解、采集质量审计 | | Day 06-10 | 缺失值、重复值、异常值、字段整理、清洗日志 | | Day 11-15 | 特征工程、目标变量、训练测试划分、多元线性回归、逻辑回归 | | Day 16-20 | 模型评估、预测可视化、模型对比、论文写作与答辩材料 | ## Windows 从零开始运行 ### 1. 安装 Python 建议安装 Python 3.10 或以上版本。 安装时请勾选: ```text Add Python to PATH ``` 安装后在 PowerShell 中检查: ```powershell python --version pip --version ``` 如果 `python` 无法识别,可以尝试: ```powershell py --version ``` ### 2. 克隆仓库 在 PowerShell、CMD、Git Bash 或 VS Code Terminal 中执行: ```bash git clone https://gitee.com/shikai_neu/data_analysis.git cd data_analysis ``` ### 3. 创建虚拟环境 PowerShell: ```powershell python -m venv .venv .\.venv\Scripts\Activate.ps1 ``` 如果 PowerShell 提示脚本执行策略限制,执行一次: ```powershell Set-ExecutionPolicy -Scope CurrentUser RemoteSigned ``` 然后重新激活: ```powershell .\.venv\Scripts\Activate.ps1 ``` CMD: ```cmd python -m venv .venv .venv\Scripts\activate.bat ``` ### 4. 安装依赖 ```bash pip install -r requirements.txt ``` 如果下载较慢,可以使用国内镜像: ```bash pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple ``` ## 运行方式 ### 运行某一天 在仓库根目录运行: ```bash python day01/lesson_01_code.py ``` Windows CMD 也可以写成: ```cmd python day01\lesson_01_code.py ``` 运行第 6 天: ```bash python day06/lesson_06_code.py ``` 运行第 20 天: ```bash python day20/lesson_20_code.py ``` ### 重新采集 Open-Meteo 数据 仓库已经包含默认数据,学生可以直接运行 Day 06-20。 如果要重新采集数据,运行: ```bash python day01/open_meteo_crawler_day_01.py --city shanghai --start-date 2024-01-01 --end-date 2024-06-30 ``` 采集结果会保存到: ```text data/raw/open_meteo_shanghai_2024.csv reports/feishu_visualization_course/day_01/crawler_open_meteo/ ``` ### 批量运行全部 20 天 ```bash python run_all_days.py ``` 只运行 Day 01 到 Day 05: ```bash python run_all_days.py --start 1 --end 5 ``` 只运行 Day 11 到 Day 20: ```bash python run_all_days.py --start 11 --end 20 ``` ## VS Code 使用方式 1. 打开 VS Code。 2. 选择 `File -> Open Folder`。 3. 选择本仓库目录 `data_analysis`。 4. 打开 VS Code Terminal。 5. 执行: ```bash python -m venv .venv .\.venv\Scripts\Activate.ps1 pip install -r requirements.txt python day01/lesson_01_code.py ``` 如果 VS Code 提示选择解释器,选择: ```text .venv\Scripts\python.exe ``` ## PyCharm 使用方式 1. 打开 PyCharm。 2. 选择 `Open`,打开本仓库目录 `data_analysis`。 3. 在 `Settings -> Project -> Python Interpreter` 中选择或新建虚拟环境。 4. 打开 PyCharm Terminal。 5. 执行: ```bash pip install -r requirements.txt python day01/lesson_01_code.py ``` 也可以右键某一天的脚本,例如: ```text day01/lesson_01_code.py ``` 选择 `Run`。 注意:运行时工作目录建议设置为仓库根目录 `data_analysis`,这样输出会统一写入 `reports/`。 ## 运行结果 每日脚本运行后会生成: ```text reports/feishu_visualization_course/day_XX/ ``` 常见输出文件: | 文件 | 说明 | |---|---| | `cleaned_data.csv` | 清洗后的数据 | | `cleaned_data.sqlite` | SQLite 数据库 | | `descriptive_statistics.csv` | 描述性统计 | | `paper_paragraph_draft.md` | 论文段落草稿 | | `practice_summary.csv` | 课堂练习汇总 | | `model_metrics.csv` | Day 11-20 的模型指标 | | `predictions.csv` | Day 11-20 的预测结果 | ## 常见问题 ### 1. pip 安装很慢 使用清华镜像: ```bash pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple ``` ### 2. PowerShell 无法激活虚拟环境 执行: ```powershell Set-ExecutionPolicy -Scope CurrentUser RemoteSigned ``` 然后重新执行: ```powershell .\.venv\Scripts\Activate.ps1 ``` ### 3. Day 01 爬虫是否需要代理 不需要。Open-Meteo 历史天气 API 不需要代理、账号或 API Key。普通手机热点网络即可访问。 ### 4. 不重新爬取数据可以运行吗 可以。仓库已经包含 `data/raw/open_meteo_shanghai_2024.csv`,可以直接运行任意一天脚本。 ### 5. 生成的 reports 要提交吗 不需要。`reports/` 是运行结果目录,已经在 `.gitignore` 中忽略。