Pandas #

什么是 Pandas? #

Pandas 是 Python 最流行的数据分析库,由 Wes McKinney 于 2008 年创建。Pandas 提供了快速、灵活、表达力强的数据结构,旨在使"关系"或"标记"数据的工作既简单又直观。它是数据科学、金融分析、学术研究和商业智能领域的事实标准工具。

Pandas 的优势 #

优势 说明
易用性 直观的 API,类似 SQL 和 Excel 的操作方式
功能全面 数据清洗、转换、分析、可视化一站式解决
高性能 底层使用 NumPy,处理大数据效率高
生态丰富 与 NumPy、Matplotlib、Scikit-learn 无缝集成
社区活跃 丰富的文档、教程和第三方扩展
格式支持 支持 CSV、Excel、SQL、JSON、Parquet 等多种格式

文档结构 #

本指南按以下结构组织,适合初学者按顺序学习:

1. 基础入门 #

主题 描述 文档链接
Pandas 简介 Pandas 的发展历史、特点、应用场景 intro.md
安装与配置 环境搭建、安装方式、开发工具 installation.md

2. 核心数据结构 #

主题 描述 文档链接
Series 基础 一维数据结构、创建与操作 series.md
DataFrame 基础 二维数据结构、创建与操作 dataframe.md
数据类型 Pandas 数据类型、类型转换 data-types.md
索引操作 索引创建、修改、多层索引 indexing.md

3. 数据处理 #

主题 描述 文档链接
数据读写 CSV、Excel、SQL、JSON 等格式读写 read-write.md
数据选择 loc、iloc、条件选择 selection.md
数据过滤 条件过滤、查询、布尔索引 filter.md
数据清洗 缺失值处理、重复值、异常值 cleaning.md

4. 数据分析 #

主题 描述 文档链接
统计分析 描述统计、相关性分析 statistics.md
分组聚合 groupby、聚合函数、透视表 groupby.md
合并连接 merge、join、concat merge-join.md
数据重塑 pivot、melt、stack、unstack reshape.md

5. 高级主题 #

主题 描述 文档链接
时间序列 时间索引、重采样、滚动窗口 time-series.md
数据可视化 绑定 Matplotlib 的绘图功能 visualization.md
性能优化 向量化、内存优化、并行处理 performance.md
高级操作 自定义函数、管道操作 operations.md

6. 实战案例 #

主题 描述 文档链接
数据分析实战 完整数据分析流程案例 data-analysis.md
数据管道 构建可复用的数据处理流程 data-pipeline.md
最佳实践 编码规范、性能技巧、常见陷阱 best-practices.md

学习路径 #

入门阶段(Pandas 新手) #

text
Pandas 简介 → 安装配置 → Series 基础 → DataFrame 基础
  1. 了解 Pandas 的基本概念和优势
  2. 搭建 Pandas 开发环境
  3. 掌握 Series 的创建和基本操作
  4. 理解 DataFrame 的结构和操作
  5. 学会基本的数据读写

进阶阶段(Pandas 熟练) #

text
数据选择 → 数据过滤 → 数据清洗 → 统计分析
  1. 掌握 loc、iloc 等数据选择方法
  2. 学会条件过滤和布尔索引
  3. 处理缺失值、重复值和异常值
  4. 进行描述性统计和相关性分析
  5. 使用 groupby 进行分组聚合

高级阶段(Pandas 专家) #

text
合并连接 → 数据重塑 → 时间序列 → 性能优化
  1. 掌握 merge、join、concat 操作
  2. 学会 pivot、melt 等重塑操作
  3. 处理时间序列数据
  4. 优化大数据处理性能
  5. 创建自定义函数和管道

大师阶段(Pandas 大师) #

text
实战项目 → 数据管道 → 最佳实践 → 源码研究
  1. 完成完整的数据分析项目
  2. 构建可复用的数据处理管道
  3. 掌握性能优化和最佳实践
  4. 参与 Pandas 开源社区贡献

Pandas vs 其他工具 #

Pandas vs Excel #

特性 Pandas Excel
数据量 百万级+ 有限(约100万行)
自动化 完全可编程 需要手动操作
可重复性
复杂计算 强大 有限
学习曲线 中等 平缓
可视化 需配合 Matplotlib 内置丰富

Pandas vs SQL #

特性 Pandas SQL
运行环境 内存 数据库服务器
数据规模 适合中小数据 适合大数据
灵活性 极高 中等
复杂计算 Python 全功能 受限于 SQL 语法
学习曲线 中等 平缓
持久化 需手动保存 自动持久化

Pandas vs R data.frame #

特性 Pandas R data.frame
语言 Python R
生态 Python 数据科学生态 R 统计分析生态
性能 中等
语法 面向对象 函数式
可视化 Matplotlib/Seaborn ggplot2
社区 更大 统计学领域强

快速开始 #

安装 Pandas #

bash
pip install pandas

第一个示例 #

python
import pandas as pd

# 创建 DataFrame
df = pd.DataFrame({
    'name': ['Alice', 'Bob', 'Charlie'],
    'age': [25, 30, 35],
    'city': ['New York', 'London', 'Tokyo']
})

# 查看数据
print(df)

# 基本统计
print(df.describe())

# 数据筛选
print(df[df['age'] > 25])

读取 CSV 文件 #

python
import pandas as pd

# 读取 CSV
df = pd.read_csv('data.csv')

# 查看前几行
print(df.head())

# 查看数据信息
print(df.info())

# 保存到 Excel
df.to_excel('output.xlsx', index=False)

核心概念预览 #

Series - 一维数据 #

python
import pandas as pd

s = pd.Series([1, 2, 3, 4, 5], index=['a', 'b', 'c', 'd', 'e'])
print(s)

DataFrame - 二维数据 #

python
import pandas as pd

df = pd.DataFrame({
    'A': [1, 2, 3],
    'B': ['a', 'b', 'c']
})
print(df)

数据选择 #

python
# 选择列
df['A']

# 选择行
df.loc[0]
df.iloc[0]

# 条件选择
df[df['A'] > 1]

分组聚合 #

python
df.groupby('category').agg({
    'value': ['mean', 'sum', 'count']
})

资源推荐 #

开始学习 #

准备好了吗?让我们从 Pandas 简介 开始你的数据分析学习之旅!

最后更新:2026-04-04