前两周拿回来的数据还是「一堆数字」——本周用 Pandas 清洗统计、Matplotlib 画图, 走完从原始数据到可视化结论的完整链路;然后解决 AI 项目最痛的问题:依赖冲突。
| 时间 | 环节 | 要点 |
|---|---|---|
| 0–10 | Pandas 模型 | DataFrame=代码里的 Excel;read_csv/head/info/describe |
| 10–22 | 筛选与统计 | df[df[列]>值];groupby+mean;sort_values——每步打印看变化 |
| 22–34 | 动手练习 | 运行场:清洗→统计→ASCII 柱状图(Pandas 思维先行版) |
| 34–46 | Matplotlib | bar 对比 / plot 趋势;标题轴标保存;图表是为了让数据说话 |
| 46–58 | 全链路演示 | 天气 CSV → groupby 均温 → 柱状图 + 一周趋势折线 |
| 58–70 | 依赖灾难现场 | 全局环境装 requests==2.20 再装 >=2.28——当场冲突报错 |
| 70–85 | 虚拟环境 | venv 创建/激活/独立安装;requirements.txt 锁定与还原 |
| 85–95 | 镜像与生态 | 清华源 -i 加速;pipenv/conda 知道有得选 |
| 95–100 | 小测 | 随堂小测 3 题 |
依赖灾难演示一定要现场复现——比讲十遍概念都有效。
import pandas as pd
df = pd.read_csv("weather.csv") # DataFrame ≈ 一张表
df[df["temperature"] > 30] # 条件筛选:高温天
df.groupby("city")["temperature"].mean() # 分组统计:各城市均温
df.sort_values("temperature", ascending=False) # 排序
方法极多不用背——能描述要什么、能看懂 AI 生成的链式调用即可。
浏览器运行场装不了 Pandas,但「清洗 → 统计 → 结论」的思路先跑通:
import matplotlib.pyplot as plt
fig, ax = plt.subplots(figsize=(8, 4))
ax.bar(cities, avg_temps) # 柱状图:对比
ax.plot(dates, temps) # 折线图:趋势
ax.set_title("各城市平均温度")
ax.set_ylabel("℃")
fig.savefig("temp.png", dpi=150) # 保存图片
演示:全局环境里装 requests==2.20,再装一个要求 requests>=2.28 的库——
ERROR: pip's dependency resolver... requests 2.20 has requirement...,
but you'll have requests 2.31 which is incompatible.
pip install -r requirements.txt,依赖原样到位.gitignore 要忽略 venv/ 文件夹本身pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名深入阅读:M3 · M4 模块页 · 经典笔记 15.2 Pandas · 10.5 虚拟环境