🎯 今日目标
- 理解 Pandas 的作用和核心概念
- 学会创建 Series 和 DataFrame
- 掌握基本数据读取(CSV)与常用查看方法
🧰 1. 什么是 Pandas?
Pandas 是基于 NumPy 的强大数据分析库,提供了灵活的表格数据结构
DataFrame
,让你可以像操作 Excel 或数据库一样处理数据。
🧱 2. 核心数据结构
🧩 Series(带标签的一维数组)
import pandas as pd
s = pd.Series([90, 85, 78], index=["张三", "李四", "王五"])
print(s)
输出:
张三 90
李四 85
王五 78
dtype: int64
🧩 DataFrame(二维表格)
data = {
"姓名": ["张三", "李四", "王五"],
"成绩": [90, 85, 78],
"是否及格": [True, True, False]
}
df = pd.DataFrame(data)
print(df)
输出:
姓名 成绩 是否及格
0 张三 90 True
1 李四 85 True
2 王五 78 False
📖 3. 数据导入(CSV 文件)
df = pd.read_csv("students.csv", encoding="utf-8")
print(df.head()) # 查看前几行
print(df.info()) # 概况
print(df.describe()) # 描述性统计(数值字段)
🔧 4. 常用基本操作
print(df["成绩"]) # 访问某列
print(df.iloc[0]) # 按行索引访问
print(df[df["成绩"] >= 80]) # 筛选数据
print(df.sort_values("成绩", ascending=False)) # 排序
🧪 今日练习任务
创建一个 DataFrame,包含 5 名学生的姓名、性别、成绩、是否及格字段
data = { "姓名": ["张三", "李四", "王五", "赵六", "钱七"], "成绩": [90, 85, 78, 88, 92], "是否及格": [True, True, False, True, True], "性别": ["男", "女", "男", "女", "男"] } df = pd.DataFrame(data) print(df)
输出:
姓名 成绩 是否及格 性别 0 张三 90 True 男 1 李四 85 True 女 2 王五 78 False 男 3 赵六 88 True 女 4 钱七 92 True 男
筛选出所有不及格学生并打印
failing_students = df[df["是否及格"] == False] print("不及格学生:") print(failing_students)
输出:
不及格学生: 姓名 成绩 是否及格 性别 2 王五 78 False 男
计算成绩的平均分、最大分、最小分
average_score = df["成绩"].mean() max_score = df["成绩"].max() min_score = df["成绩"].min()
输出:
平均分: 86.6, 最大分: 92, 最小分: 78
将该 DataFrame 保存为
students.csv
文件(使用to_csv
)df.to_csv("students.csv", index=False, encoding='utf-8-sig') print("DataFrame 已保存为 students.csv 文件")
输出:
DataFrame 已保存为 students.csv 文件
✅ 示例:保存为 CSV 文件
df.to_csv("students.csv", index=False, encoding="utf-8")
✍️ 今日总结
- 掌握了 Pandas 的核心结构:Series 与 DataFrame
- 学会了基本的数据读取、创建和查看方法
- 初步能用 Pandas 做简单的数据筛选、排序和保存