代码之家  ›  专栏  ›  技术社区  ›  Lynn

过滤多年

  •  1
  • Lynn  · 技术社区  · 4 年前

    我有一个df,我想在那里过滤多年

    数据

    id type stat  date
    aa ss   y     2022-01-01
    bb tt   y     2023-01-05
    cc uu   n     2023-01-05
    aa hi   y     2021-01-01
    aa hi   n     2021-02-01
    

    渴望的

    id type stat  date
    aa ss   y     2022-01-01
    bb tt   y     2023-01-05
    cc uu   n     2023-01-05
    

    我想回忆2022年和2023年。

    df = df[df['date'].dt.year == 2022 & 2023]
    

    如有任何建议,我们将不胜感激

    1 回复  |  直到 4 年前
        1
  •  2
  •   wwnde    4 年前

    强制使用datetime并按dt过滤。年

    df[pd.to_datetime(df['date']).dt.year.isin([2022,2023])]
    
        2
  •  0
  •   BENY    4 年前

    你也可以检查一下 between

    df[df.date.between('2022-01-01','2024-01-01')]
       id type stat       date
    0  aa   ss    y 2022-01-01
    1  bb   tt    y 2023-01-05
    2  cc   uu    n 2023-01-05