You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Pandas提取CSV中五月(05)数据行?设置索引是否更简便?

使用Pandas提取五月数据的两种方法及索引设置的优势

核心结论

把年月列设置为Datetime索引确实会让操作更灵活简便,尤其是后续还要做时间相关的分析时。如果只是单次筛选,两种方法都可行,但索引方案的扩展性更强。

方法一:不设置索引,直接字符串匹配

假设你的CSV里存储年月的列名为year_month,直接用字符串结尾匹配筛选:

import pandas as pd

# 读取CSV文件
df = pd.read_csv('your_data.csv')

# 筛选所有以"-05"结尾的行(即五月数据)
may_data = df[df['year_month'].str.endswith('-05')]

方法二:设置Datetime索引,按月份筛选

推荐把年月列转为datetime类型再设为索引,这样能利用Pandas的时间序列功能:

import pandas as pd

df = pd.read_csv('your_data.csv')

# 将年月列转为datetime类型(指定格式确保解析正确)
df['year_month'] = pd.to_datetime(df['year_month'], format='%Y-%m')
# 设置为索引
df = df.set_index('year_month')

# 直接按月份筛选,逻辑更直观
may_data = df[df.index.month == 5]

两种方案对比

  • 单次筛选:两种方法代码量相近,字符串匹配更直接。
  • 后续分析:Datetime索引支持更多操作,比如按年份分组统计五月数据、时间范围切片(如提取1990-2000年的五月数据)、按季度汇总等,灵活性更强。

内容的提问来源于stack exchange,提问作者MVB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 18:12:40