第 18 天:NumPy + 高级 Pandas + 数据可视化入门
太棒了!你选择了 ✅路线 B:数据分析 / AI 方向,这是非常有前途的一条路!🔥
从今天开始,你在走的是:
✅ 数据分析 → 机器学习 → 人工智能 的主干路线
✅ 第 18 天:NumPy + 高级 Pandas + 数据可视化入门
今天这一关是:
✅ 从“会用表格” → 进阶到“专业数据分析”
✅ 第 18 天学习目标
今天你将学会:
- ✅ NumPy:高性能数值计算
- ✅ Pandas 进阶操作(筛选、排序)
- ✅ 数据可视化(matplotlib 画图)
- ✅ 做一个真正的 数据分析小项目
✅ 一、NumPy 入门(AI 的数学基础)
✅ 1️⃣ 安装 NumPy
如果你还没装:
pip install numpy✅ 2️⃣ 创建数组(最基础)
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(arr)
print(type(arr))✅ 输出:
[1 2 3 4 5]
<class 'numpy.ndarray'>✅ 3️⃣ NumPy 的超级能力:批量计算!
arr = np.array([1, 2, 3, 4, 5])
print(arr * 2)
print(arr + 10)✅ 输出:
[ 2 4 6 8 10]
[11 12 13 14 15]🔥 这就是 AI 训练速度快的根本原因之一!
✅ 4️⃣ 常用 NumPy 统计函数
print(arr.mean()) # 平均值
print(arr.max()) # 最大值
print(arr.min()) # 最小值
print(arr.sum()) # 总和✅ 二、Pandas 进阶(真正的数据分析)
假设你有 score.csv:
name,score,age
小明,90,18
小红,95,19
小刚,88,18
小强,76,20✅ 1️⃣ 读取数据
import pandas as pd
df = pd.read_csv("score.csv")
print(df)✅ 2️⃣ 条件筛选(非常重要 ✅)
✅ 找出 成绩 ≥ 90 的学生
print(df[df["score"] >= 90])✅ 3️⃣ 排序(真实数据分析必备)
✅ 按成绩从高到低:
print(df.sort_values(by="score", ascending=False))✅ 4️⃣ 分组统计(大学数据分析核心技能)
✅ 按年龄分组,算平均成绩:
print(df.groupby("age")["score"].mean())✅ 三、数据可视化(让数据“看得见”)
你现在正式进入:
✅ 数据分析三件套:NumPy + Pandas + Matplotlib
✅ 1️⃣ 安装 matplotlib
pip install matplotlib✅ 2️⃣ 画一个简单折线图(成绩变化)
import matplotlib.pyplot as plt
scores = [90, 95, 88, 76]
plt.plot(scores)
plt.title("Score Line Chart")
plt.xlabel("Index")
plt.ylabel("Score")
plt.show()你会看到一个真正的“成绩走势图” ✅
✅ 3️⃣ 画柱状图(最常用)
names = ["小明", "小红", "小刚", "小强"]
scores = [90, 95, 88, 76]
plt.bar(names, scores)
plt.title("Student Scores")
plt.show()✅ 第 18 天综合实战小项目(真实数据分析)
🎯 项目名:
✅ 班级成绩数据分析系统(第一版)
✅ 功能要求:
1️⃣ 从 score.csv 读取数据
2️⃣ 统计:
- 平均分
- 最高分
- 最低分
3️⃣ 找出: - 不及格学生(< 60)
4️⃣ 画一张: - 成绩柱状图
✅ 项目参考代码(你可以直接敲)
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv("score.csv")
print("平均分:", df["score"].mean())
print("最高分:", df["score"].max())
print("最低分:", df["score"].min())
print("不及格学生:")
print(df[df["score"] < 60])
# 画图
plt.bar(df["name"], df["score"])
plt.title("Class Score Analysis")
plt.xlabel("Name")
plt.ylabel("Score")
plt.show()🔥 如果你这个程序能跑通,你已经:
✅ 正式进入【数据分析 & AI 入门段位】
✅ 第 18 天练习任务(今天必须完成)
✅ 练习 1:
用 NumPy 创建数组 [10, 20, 30, 40],计算:
- 平均值
- 最大值
✅ 练习 2(核心):
自己创建 score.csv,至少 6 个学生
用 Pandas:
- 按成绩排序
- 找出最低分学生
✅ 练习 3(项目级):
完成我上面给你的:
✅《班级成绩数据分析系统(第一版)》
🚀 第 19 天预告(正式踏入 AI 领域)
当你说:
👉 “第 18 天项目跑通了”
我就带你进入:
✅ 第 19 天:机器学习入门(scikit-learn)
你将第一次真正做到:
- ✅ 用 Python 训练模型
- ✅ 让程序“自动学习”
- ✅ 做一个:成绩预测 / 房价预测 / 分类模型
✅ 你现在可以开始做第 18 天的【数据分析项目】
✅ 做完你可以把代码发给我,我可以:
- ✅ 帮你优化为“竞赛级写法”
- ✅ 帮你讲清每一行的工程意义
- ✅ 帮你规划:怎样一步步走到 AI 工程师
如果你愿意,我还能帮你定制一条:
🎯 “大一 → AI 实习 → 校招简历路线图”
相关推荐
- 第 16 天:常用第三方库(requests + pandas 入门) 2026-01-03
- 第 17 天:第一个完整综合项目实战 2026-01-03
- 第 19 天:机器学习入门(scikit-learn) 2026-01-03
- 第 20 天:机器学习分类模型(逻辑回归 Classification) 2026-01-03
- 第 14 天:OOP 进阶(继承 _ 方法重写 _ 多态) 2026-01-03
评论0
暂时没有评论