Pandas简介
Pandas是一个用于数据操作和分析的强大Python库。它提供了快速、灵活和易于理解的数据结构,极大地简化了“数据清洗”和“数据分析”过程。Pandas基于NumPy构建,支持多种数据输入/输出格式,使得数据处理更加方便。
Pandas的数据结构
1. Series
- Series是一种一维数组,类似于NumPy的ndarray,但具有标签(索引),因此更加灵活。
2. DataFrame
- DataFrame是一个二维数据结构,类似于电子表格或SQL表格,具有行和列的标签。它可以包含不同类型的数据(整数、浮点数、字符串等)。
3. Panel
- Panel是一个三维数据结构,可以被视为多个DataFrame的组合。然而,从Pandas 0.25.0版本开始,Panel已经被弃用,推荐使用多维数组(如xarray)来处理高维数据。
Pandas的基本操作
1. 导入Pandas
import pandas as pd
2. 读取.csv文件
s =
pd.read_csv('./train.csv')
3. 访问和查看数据
- 显示前几行数据:
df.head()
- 显示后几行数据:
df.tail()
- 显示数据形状:
df.shape
- 显示每列的数据类型:
df.dtypes
- 显示数据的统计描述:
df.describe()
4. 数据筛选
- 筛选某一列:
df['column_name']
- 筛选满足条件的行:
df[df['column_name'] > value]
5. 数据修改
- 增加新列:
df['new_column'] = data
- 填充缺失值:
df['column'] = df['column'].fillna(value)
6. 数据排序
- 按某一列排序:
df.sort_values('column', ascending=True)
7. 数据分组
- 按某一列进行分组:
grouped = df.groupby('column')
- 计算每组数据的平均值:
grouped.mean()
Pandas的数据输入/输出
- 读取和写入CSV文件:
df = pd.read_csv('file.csv') df.to_csv('file.csv')
其他常用操作
1. 改变排序方法
df.sort_values('column', ascending=False)
- 按多个列排序:
df.sort_values(['column1', 'column2'], ascending=[True, False])
2. 更换表头
- 重命名单个列:
df.rename(columns={'old_name': 'new_name'}, inplace=True)
- 批量重命名列:
df.columns = ['new_name1', 'new_name2', 'new_name3']
- 重置索引并设置新的列名:
df.reset_index(inplace=True) df.columns = ['new_index', 'new_name1', 'new_name2']