🧹 数据清洗进阶技巧

  • 处理缺失值:使用 df.fillna() 时可指定 method='ffill' 实现前向填充
  • 重复数据处理df.drop_duplicates() 支持 subset 参数精准去重
  • 类型转换pd.to_datetime() 可解析复杂日期格式,如 pd.to_datetime('2023-04-05', format='%Y-%m-%d')
  • 字符串操作str.contains() 配合正则表达式实现灵活文本匹配
    数据处理流程

🧮 分组聚合深度实践

  • 使用 groupby() 时注意:df.groupby('category').mean() 会自动排除非数值列
  • 多级分组:df.groupby(['date', 'region']).sum()
  • 自定义聚合函数:df.groupby('col').agg({'col2': ['mean', 'std'], 'col3': 'sum'})
  • 聚合后重置索引:grouped.reset_index()

⏱ 时间序列分析专项

  • 日期范围生成:pd.date_range(start='2023-01-01', periods=10)
  • 时间偏移操作:df['date'] + pd.Timedelta('7D')
  • 频率转换:df.resample('W').mean() 将日数据转换为周数据
  • 时间戳格式化:df['date'].dt.strftime('%Y年%m月')

⚡ 性能优化技巧

  • 使用 category 类型替代字符串:df['col'] = df['col'].astype('category')
  • 增量读取数据:pd.read_csv('large_file.csv', chunksize=10000)
  • 向量化操作:避免使用循环,改用 df.apply() 或内置函数
  • 内存管理:df.memory_usage() 用于监控内存使用情况

🔗 查看更多数据可视化教程

数据清洗

💡 小贴士:当处理超大数据集时,建议使用 dask 库进行分布式计算,可参考 分布式数据处理指南 获取更多信息。