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

如何在Python 3的Jupyter Notebook中筛选特定行数及指定时间范围数据

Data Frame

Pandas DataFrame 2008-2016年时间范围筛选方法

首先确保你DataFrame中的时间列已转换为datetime格式,执行以下代码完成转换:
df['时间列名'] = pd.to_datetime(df['时间列名'])
将代码中的时间列名替换为你实际存储时间数据的列名即可。

以下是3种常用的筛选方案,按需选择:

  • 方案1:按年份属性直接筛选(适合仅需按完整年度筛选的场景)
    filtered_df = df[(df['时间列名'].dt.year >= 2008) & (df['时间列名'].dt.year <= 2016)]
    
  • 方案2:使用between方法筛选(可自定义精确到时分秒的起止时间)
    start = pd.to_datetime('2008-01-01')
    end = pd.to_datetime('2016-12-31 23:59:59')
    filtered_df = df[df['时间列名'].between(start, end)]
    
  • 方案3:日期切片筛选(适合时间列已设为索引的场景)
    # 先将时间列设为索引
    df = df.set_index('时间列名')
    # 直接按年份切片即可
    filtered_df = df.loc['2008':'2016']
    

验证小技巧:筛选完成后可执行print(filtered_df['时间列名'].dt.year.min(), filtered_df['时间列名'].dt.year.max())查看输出的最小和最大年份是否为2008和2016,确认筛选结果正确。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 03:42:00