Pandas数据处理基础:表格数据操作入门指南
什么是Pandas能处理的数据类型?
Pandas是Python中最强大的数据分析库之一,专门设计用于处理结构化数据。它提供了两种核心数据结构:DataFrame(数据框)和Series(序列),使得数据操作变得简单高效。
开始使用Pandas
要使用Pandas,首先需要导入这个库。按照社区惯例,我们通常使用pd
作为Pandas的别名:
import pandas as pd
这种导入方式是Pandas文档和社区中的标准做法。
Pandas的表格数据表示
Pandas的核心数据结构DataFrame是一个二维表格,类似于Excel电子表格或SQL数据库中的表。它可以存储不同类型的数据(字符串、整数、浮点数、分类数据等),每一列可以包含不同类型的数据。
创建DataFrame示例
假设我们要存储泰坦尼克号乘客的部分信息,包括姓名、年龄和性别:
df = pd.DataFrame(
{
"Name": [
"Braund, Mr. Owen Harris",
"Allen, Mr. William Henry",
"Bonnell, Miss Elizabeth",
],
"Age": [22, 35, 58],
"Sex": ["male", "male", "female"],
}
)
这段代码创建了一个包含三列的DataFrame:
- Name列:包含字符串类型的乘客姓名
- Age列:包含整数类型的乘客年龄
- Sex列:包含字符串类型的乘客性别
在电子表格软件中,这样的数据结构看起来会非常相似,有明确的列名和行数据。
理解Series:DataFrame的组成部分
DataFrame中的每一列实际上都是一个Series对象。Series是Pandas中的一维数据结构,类似于带有标签的数组。
访问单个列
要访问DataFrame中的单个列,可以使用列名作为索引:
age_series = df["Age"]
这将返回一个Series对象,包含Age列的所有数据。
独立创建Series
你也可以独立创建Series对象:
ages = pd.Series([22, 35, 58], name="Age")
与DataFrame不同,Series没有列标签(因为它本身就是一列数据),但它有行标签(索引)。
数据操作基础
Pandas提供了丰富的方法来操作和分析数据。
计算最大值
例如,要找出乘客的最大年龄:
df["Age"].max() # 使用DataFrame
# 或
ages.max() # 使用Series
这两种方式都会返回相同的结果:58。
基本统计信息
要快速获取数值列的基本统计信息,可以使用describe()
方法:
df.describe()
这个方法会返回计数、平均值、标准差、最小值、四分位数和最大值等统计指标。注意,默认情况下,describe()
只会处理数值列,文本列(如Name和Sex)会被自动忽略。
关键要点总结
- 导入惯例:始终使用
import pandas as pd
导入Pandas - 数据结构:
- 表格数据存储在DataFrame中
- DataFrame的每一列都是一个Series
- 操作方法:通过调用DataFrame或Series的方法来执行各种操作
- 方法调用:记住方法也是函数,调用时需要加上括号
()
为什么选择Pandas进行数据处理?
Pandas不仅提供了电子表格软件的基本功能,还具备更多高级数据处理能力:
- 高效处理大数据:Pandas针对性能进行了优化,可以处理比电子表格大得多的数据集
- 丰富的数据操作:支持复杂的数据筛选、分组、聚合和转换操作
- 与其他工具集成:可以轻松与NumPy、Matplotlib等科学计算库集成
- 数据清洗能力:提供了处理缺失值、重复数据等的强大工具
对于初学者来说,掌握DataFrame和Series这两个基本概念是使用Pandas的第一步。随着学习的深入,你会发现Pandas能够完成几乎所有你能想到的数据处理任务。