1. 数据读取与写入
- 读取CSV文件:
pd.read_csv(filename)
- 读取Excel文件:
pd.read_excel(filename)
- 读取SQL数据库:
pd.read_sql(query, connection_object)
- 写入CSV文件:
df.to_csv(filename, index=False)
- 写入Excel文件:
df.to_excel(filename, sheet_name='Sheet1', index=False)
2. 数据查看
- 查看前几行数据:
df.head(n)
,默认显示前5行 - 查看后几行数据:
df.tail(n)
,默认显示后5行 - 查看数据维度:
df.shape
,返回行数和列数的元组 - 查看数据集基本信息:
df.info()
,包括索引、列名、数据类型和内存信息 - 查看数值型列的统计信息:
df.describe()
3. 数据筛选与索引
- 按列名访问数据:
df['col_name']
- 按位置访问数据:
df.iloc[row_index, column_index]
- 按索引名访问数据:
df.loc[index_name, 'col_name']
- 条件筛选:
df[df['col_name'] > threshold]
- 多条件筛选:使用
&
、|
等逻辑运算符
4. 数据处理
- 检查缺失值:
df.isnull()
或df.isna()
- 删除缺失值:
df.dropna()
(按行删除)、df.dropna(axis=1)
(按列删除) - 填充缺失值:
df.fillna(value=x)
,x
为填充值 - 数据类型转换:
df['col_name'].astype(float)
- 字符串替换:
df['col_name'].str.replace('old_str', 'new_str')
5. 数据排序与分组
- 按索引排序:
df.sort_index()
- 按列值排序:
df.sort_values(by='col_name', ascending=True/False)
- 数据分组:
df.groupby('col_name')
,之后可以接agg()
、transform()
等函数进行聚合操作
6. 数据转换与合并
- 重置索引:
df.reset_index()
,可选参数drop=True
用于不将旧索引作为列保留 - 设置索引:
df.set_index('col_name')
- 合并DataFrame:
pd.concat([df1, df2], axis=0/1)
,axis=0
表示纵向合并,axis=1
表示横向合并 - 连接DataFrame:
pd.merge(df1, df2, on='col_name')
,根据指定列连接两个DataFrame
7. 统计与计算
- 求最大值:
df.max()
- 求最小值:
df.min()
- 求和:
df.sum()
- 求平均值:
df.mean()
- 唯一值计数:
df['col_name'].nunique()
或df['col_name'].value_counts()
8. 其他常用命令
- 重命名列:
df.rename(columns={'old_name': 'new_name'})
- 增加列:
df['new_col'] = df['existing_col'] + 1
- 删除列:
df.drop('col_name', axis=1)
- 删除行:
df.drop(index_name, axis=0)