🐼 Pandas:强大的数据分析库
Pandas 是 Python 中用于处理结构化数据(表格数据、时间序列等)的高级工具,它构建于 NumPy 之上。
🎯 Pandas 解决了什么问题?
Python 原生的列表、字典虽然可以保存数据,但不方便进行:
- 数据清洗
- 表格处理(如 Excel、CSV)
- 缺失值处理
- 数据聚合、分组分析
- 时间序列分析
Pandas 通过两大核心数据结构解决这些问题:
📦 核心数据结构
结构类型 | 简述 |
---|---|
Series | 一维带索引的数组,类似字典 |
DataFrame | 二维表格型数据结构,类似 Excel 表格 |
1️⃣ 创建 Series
导入 pandas 作为 pd
成绩 = pd.Series([90, 85, 78], 索引=["张三", "李四", "王五"])
打印(成绩)
2️⃣ 创建 DataFrame
数据 = {
"姓名": ["张三", "李四", "王五"],
"成绩": [90, 85, 78]
}
表格 = pd.DataFrame(数据)
打印(表格)
3️⃣ 读取与保存数据
df = pd.read_csv("data.csv")
df.to_excel("结果.xlsx")
4️⃣ 访问与切片
打印(df["成绩"])
打印(df.loc[0]) # 按标签
打印(df.iloc[1]) # 按位置
5️⃣ 描述性统计与清洗
打印(df.describe()) # 汇总统计
df.dropna() # 删除空值
df.fillna(0) # 填充空值
6️⃣ 排序与筛选
# 根据成绩排序
df.sort_values("成绩", 升序=False)
# 筛选成绩大于80的行
df[df["成绩"] > 80]
7️⃣ 分组与聚合
df.groupby("班级")["成绩"].平均()
8️⃣ 处理时间序列
df["时间"] = pd.to_datetime(df["时间"])
df.set_index("时间").按月分组().求和()
🔚 总结:Pandas 优势
功能模块 | 用途 |
---|---|
读取/写入 | CSV、Excel、SQL |
清洗数据 | 缺失值处理、重 复值 |
分组聚合 | groupby() |
时间序列 | resample() 、滚动窗口 |
数据合并 | merge() 、concat() |