库简介
pandas是Python中最流行的数据分析库,提供了DataFrame这一强大的数据结构,可以轻松处理结构化数据。
安装方法
bash
pip install pandas
入门示例
python
import pandas as pd
# 创建简单的DataFrame
data = {'姓名': ['张三', '李四', '王五'],
'年龄': [25, 30, 35],
'城市': ['北京', '上海', '广州']}
df = pd.DataFrame(data)
print(df)
# 基本数据操作
print(df['年龄'].mean()) # 计算平均年龄
print(df[df['年龄'] > 28]) # 筛选年龄大于28的记录
进阶实战
python
# 读取CSV文件并进行数据分析
import pandas as pd
# 读取数据
df = pd.read_csv('sales_data.csv')
# 数据清洗
df = df.dropna() # 删除缺失值
df['销售额'] = df['单价'] * df['数量']
# 分组统计
sales_by_city = df.groupby('城市')['销售额'].sum()
print(sales_by_city)
# 时间序列分析
df['日期'] = pd.to_datetime(df['日期'])
df.set_index('日期', inplace=True)
monthly_sales = df['销售额'].resample('M').sum()
最佳实践
- 使用
.copy()方法避免SettingWithCopyWarning - 对于大型数据集,使用适当的数据类型减少内存占用
- 利用向量化操作代替循环提高性能
应用场景
- 数据清洗和预处理
- 数据分析和统计
- 时间序列分析
- 数据可视化准备
常见问题
-
如何处理缺失值?
- 使用
df.dropna()删除缺失值 - 使用
df.fillna(value)填充缺失值
- 使用
-
如何合并多个DataFrame?
- 使用
pd.concat([df1, df2])进行合并 - 使用
pd.merge(df1, df2, on='key')进行连接
- 使用
-
如何提高pandas性能?
- 使用向量化操作代替循环
- 使用适当的数据类型
- 使用分块处理大型数据集