Python Pandas 基础教程
Pandas 是 Python 中最流行的数据分析和处理库。它提供了高性能、易于使用的数据结构和数据分析工具。
1. 安装与导入
在使用 Pandas 之前,你需要确保已经安装了它。通常我们会结合 `numpy` 一起使用。
安装
在终端或命令行中运行以下命令:
pip install pandas numpy
导入
在 Python 脚本中,我们通常使用别名 `pd` 来导入 Pandas:
import pandas as pd import numpy as np
2. 核心数据结构
Pandas 有两个主要的数据结构:Series (一维) 和 DataFrame (二维)。
2.1 Series (序列)
Series 是一种类似于一维数组的对象,它由一组数据(各种 NumPy 数据类型)以及一组与之相关的数据标签(即索引)组成。
# 从列表创建 Series s = pd.Series([1, 3, 5, np.nan, 6, 8]) print(s)
输出:
0 1.0 1 3.0 2 5.0 3 NaN 4 6.0 5 8.0 dtype: float64
2.2 DataFrame (数据框)
DataFrame 是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔值等)。
通过字典创建 DataFrame:
data = { 'Name': ['Alice', 'Bob', 'Charlie', 'David'], 'Age': [24, 27, 22, 32], 'City': ['New York', 'Los Angeles', 'Chicago', 'Houston'] } df = pd.DataFrame(data) print(df)
输出:
Name Age City 0 Alice 24 New York 1 Bob 27 Los Angeles 2 Charlie 22 Chicago 3 David 32 Houston
3. 数据读取与写入
Pandas 支持多种文件格式的读写,最常用的是 CSV 和 Excel。
| 格式 | 读取方法 | 写入方法 |
|---|---|---|
| CSV | `pd.read_csv('file.csv')` | `df.to_csv('file.csv')` |
| Excel | `pd.read_excel('file.xlsx')` | `df.to_excel('file.xlsx')` |
| JSON | `pd.read_json('file.json')` | `df.to_json('file.json')` |
| SQL | `pd.read_sql(query, connection)` | `df.to_sql('table', connection)` |
示例:读取 CSV 文件
# 假设当前目录下有一个 data.csv 文件 # df = pd.read_csv('data.csv') # print(df.head()) # 查看前5行
4. 查看数据
加载数据后,我们需要快速了解数据的概况。
- 查看头部和尾部
- `df.head(n)`: 查看前 n 行(默认 5 行)。
- `df.tail(n)`: 查看后 n 行。
- 查看索引和列名
- `df.index`: 获取行索引。
- `df.columns`: 获取列名。
- 统计摘要
- `df.describe()`: 快速查看数值列的统计摘要(均值、标准差、最大最小值等)。
- 数据转置
- `df.T`: 行列互换。
- 按轴排序
- `df.sort_index(axis=1, ascending=False)`: 按列名降序排列。
- 按值排序
- `df.sort_values(by='Age')`: 按 'Age' 列的值排序。
# 示例:查看统计摘要 print(df.describe())
5. 数据选择
Pandas 推荐使用优化的数据访问方法:`.at`, `.iat`, `.loc`, `.iloc`。
- 按标签选择 (.loc)
# 选择 'Name' 和 'Age' 两列的所有行 print(df.loc[:, ['Name', 'Age']])
- 按位置选择 (.iloc)
# 选择第3行(索引为2) print(df.iloc[2]) # 选择前3行,前2列 print(df.iloc[0:3, 0:2])
- 布尔索引 (条件筛选)
# 筛选 Age 大于 25 的行 print(df[df['Age'] > 25])
相关链接: