从零掌握 Python
精通 Pandas

专为零基础学员打造的 Python + Pandas 数据分析学习方案
配备专业助教支援,从数据处理到数据分析,助你快速成长

为什么选择我们?

专业、系统、实战的 Python + Pandas 数据分析学习体验

Pandas 专业指导

从基础操作到高级应用,全面掌握 Pandas 数据处理技能

系统化学习

从数据导入、清洗、处理到分析输出,完整的数据处理流程

专业助教支援

1v1 答疑解惑,及时解决学习中遇到的各种问题

项目实战驱动

通过真实业务数据案例,将 Pandas 技能转化为实际分析能力

就业能力培养

数据分析项目经验,简历优化指导,助力数据分析职场竞争力

完整学习闭环

从基础到实践,从项目到就业,提供全方位的学习支持

Pandas 完整使用教程

从基础到高级,全面掌握 Python 最强大的数据分析库

Pandas 简介

Pandas 是 Python 中最流行的数据分析库,提供了高性能、易用的数据结构和数据分析工具。 它可以轻松处理各种格式的数据,进行数据清洗、转换、分析和可视化,是数据科学工作的必备工具。

强大的数据结构

DataFrame 和 Series,轻松处理表格和序列数据

丰富的数据操作

数据清洗、转换、合并、分组等操作一应俱全

多格式支持

支持 CSV、Excel、SQL、JSON 等多种数据格式

高性能处理

基于 NumPy 构建,处理大数据集性能优异

一、生成数据表

导入库、读取文件或创建数据表

1. 导入 Pandas 库

首先导入 pandas 库,一般都会用到 numpy 库,所以我们先导入备用:

import numpy as np

import pandas as pd

2. 导入 CSV 或 Excel 文件

# 读取 CSV 文件

df = pd.read_csv('name.csv', header=1)

# 读取 Excel 文件

df = pd.read_excel('name.xlsx')

3. 用 Pandas 创建数据表

使用字典创建 DataFrame:

df = pd.DataFrame({
    "id": [1001, 1002, 1003, 1004, 1005, 1006],
    "date": pd.date_range('20130102', periods=6),
    "city": ['Beijing', 'SH', 'guangzhou', 'Shenzhen', 'shanghai', 'BEIJING'],
    "age": [23, 44, 54, 32, 34, 32],
    "category": ['100-A', '100-B', '110-A', '110-C', '210-A', '130-F'],
    "price": [1200, np.nan, 2133, 5433, np.nan, 4432]
})

二、数据表信息查看

查看数据表的基本信息、维度、数据类型等

常用查看方法

1. 查看维度

df.shape

# 返回 (行数, 列数)

2. 查看数据表基本信息

df.info()

# 显示维度、列名称、数据格式、所占空间等

3. 查看数据类型

df.dtypes

# 查看每一列的数据格式

df['column_name'].dtype

# 查看某一列的格式

4. 查看前几行/后几行

df.head()

# 查看前5行

df.tail(10)

# 查看后10行

5. 查看列名和唯一值

df.columns

# 查看所有列名

df['city'].unique()

# 查看某列的唯一值

6. 查看空值

df.isnull()

# 返回布尔型DataFrame

df.isnull().sum()

# 统计每列空值数量

💡 快速统计

使用 df.describe() 可以快速查看数值型列的统计信息(计数、均值、标准差、最小值、四分位数、最大值)。

三、数据表清洗

处理缺失值、重复值、格式转换等数据清洗操作

1. 填充空值

# 用数字0填充空值

df.fillna(0)

# 使用列的均值填充空值

df['price'].fillna(df['price'].mean())

2. 处理重复值

# 删除重复行(保留第一次出现)

df.drop_duplicates()

# 删除重复行(保留最后一次出现)

df.drop_duplicates(keep='last')

3. 字符串处理

# 清除字符串两端空格

df['city'] = df['city'].str.strip()

# 大小写转换

df['city'] = df['city'].str.lower() # 转小写

df['city'] = df['city'].str.upper() # 转大写

# 数据替换

df['city'].replace('SH', 'Shanghai')

4. 数据类型转换

# 更改数据格式

df['price'] = df['price'].astype('int')

df['date'] = pd.to_datetime(df['date'])

5. 列名修改

# 更改列名称

df.rename(columns={'old_name': 'new_name'})

💡 inplace 参数

很多操作支持 inplace=True 参数, 使用后会直接修改原数据表,不需要重新赋值。例如:df.drop_duplicates(inplace=True)

四、数据预处理

数据合并、排序、索引设置等预处理操作

1. 数据表合并

# merge 合并

pd.merge(df1, df2, on='id')

# concat 拼接

pd.concat([df1, df2])

# append 追加

df1.append(df2)

# join 连接

df1.join(df2)

2. 排序操作

# 按列值排序

df.sort_values(by='age')

df.sort_values(by=['city', 'age'], ascending=False)

# 按索引排序

df.sort_index()

3. 索引设置

# 设置索引列

df.set_index('id')

# 重置索引

df.reset_index()

4. 条件标记

# 根据条件创建新列

df['group'] = df['price'].apply(lambda x: 'high' if x > 3000 else 'low')

五、数据提取与筛选

按索引、位置、条件提取和筛选数据

1. 按索引提取

# 按行索引提取

df.loc[0] # 单行

df.loc[0:3] # 区域行

# 按位置提取

df.iloc[0] # 第一行

df.iloc[0:3, 0:2] # 前3行前2列

# 按列名提取

df['city'] # 单列

df[['city', 'age']] # 多列

2. 条件筛选

# 单条件筛选

df[df['age'] > 30]

# 多条件筛选(与)

df[(df['age'] > 30) & (df['city'] == 'Beijing')]

# 多条件筛选(或)

df[(df['age'] > 30) | (df['price'] > 5000)]

# isin 筛选

df[df['city'].isin(['Beijing', 'Shanghai'])]

# 使用 query 函数

df.query('age > 30 and price > 2000')

3. 字符串提取

# 提取字符串的前几个字符

df['city'].str[:3] # 前3个字符

# 字符串包含判断

df[df['city'].str.contains('jing')]

💡 loc vs iloc

loc 使用标签(行列名)进行索引,iloc 使用整数位置进行索引。 例如:loc[0:3] 包含索引3, 而 iloc[0:3] 不包含位置3。

六、数据汇总与统计

分组统计、数据透视、描述性统计等操作

1. 分组统计

# 按单列分组计数

df.groupby('city')['id'].count()

# 按多列分组

df.groupby(['city', 'category']).count()

# 分组汇总多个统计量

df.groupby('city')['price'].agg(['sum', 'mean', 'max'])

2. 数据透视表

# 创建数据透视表

pd.pivot_table(df, values='price', index='city', columns='category')

3. 描述性统计

# 整体统计

df.describe()

# 单列统计

df['age'].mean() # 均值

df['age'].std() # 标准差

df['age'].median() # 中位数

# 相关性分析

df.corr() # 所有字段相关性

df['age'].corr(df['price']) # 两列相关性

4. 数据输出

# 输出到 CSV

df.to_csv('output.csv', index=False)

# 输出到 Excel

df.to_excel('output.xlsx', index=False)

💡 Pandas 学习建议

  • 掌握基础:先理解 DataFrame 和 Series 两种核心数据结构
  • 循序渐进:按 读取→查看→清洗→分析→输出 的流程学习
  • 多做实践:通过真实数据集练习,加深对各种操作的理解
  • 关注性能:大数据集处理时注意使用向量化操作,避免循环
  • 结合可视化:配合 Matplotlib/Seaborn 使用,让数据分析更直观

选择适合你的课程套餐

从入门到精通,总有一款适合你

Python+Pandas 数据入门营

¥1000

专为想快速掌握 Pandas 数据处理的学员设计

  • 从零开始学习 Pandas 核心概念
  • 掌握 DataFrame 和 Series 数据结构
  • 学习数据读取、查看和基本操作
  • 完成数据清洗和预处理实战
  • 掌握数据筛选、排序和分组统计
  • 提供配套课件和 Pandas 实战案例
🔥 最受欢迎

Python+Pandas 数据分析营

¥2388

针对有 Python 基础、想精通 Pandas 的学员

  • 聚焦"数据导入→清洗→分析→可视化"全流程
  • 深入 Pandas 高级操作(merge、pivot、apply)
  • 掌握时间序列数据处理和分析
  • 完成 2 个完整数据分析项目(业务数据分析、用户行为分析)
  • 学习 Pandas 性能优化和最佳实践
  • 附赠真实业务数据集和导师 1v1 答疑(2 次)

Python+Pandas 数据科学营

¥13888

面向数据分析师、数据科学家方向的学员

  • 打造"数据处理 + 数据分析"专家级技能
  • Pandas 作为核心数据处理工具贯穿全程
  • 结合 NumPy、Matplotlib 构建完整数据分析技能栈
  • 掌握大数据量 Pandas 处理技巧和优化方案
  • 完成 3 个企业级数据分析项目(销售分析、风控模型、推荐系统)
  • 项目符合数据分析岗位要求,可直接写入简历
  • 提供增值服务:简历优化指导、模拟面试(2 次)、行业资源社群

准备好掌握 Pandas 了吗?

立即注册,选择适合你的课程套餐,精通 Pandas 数据处理技能