【问题标题】:Pandas Dataframe: group by year and monthPandas Dataframe:按年和月分组
【发布时间】:2018-09-04 22:54:28
【问题描述】:

我有一个带有“date_created”列的熊猫数据框

该列的格式为 YYYY-MM-DD。例如:2017-10-05

我想按 MM/YYYY 分组

我用过这个,但它包含 DD

frame['date_created'].value_counts() 

有没有用YYYY和MM查询呢

【问题讨论】:

    标签: python pandas datetime counter series


    【解决方案1】:

    我会创建一个新列,比如“YearMonth”,日期固定为 1。然后按此列分组:

    import pandas as pd
    
    df = pd.DataFrame({'Date': ['2017-10-05', '2017-10-20']})
    df['YearMonth'] = pd.to_datetime(df['Date']).map(lambda dt: dt.replace(day=1))
    
    res = df['YearMonth'].value_counts()
    
    # 2017-10-01    2
    # Name: YearMonth, dtype: int64
    

    【讨论】:

      【解决方案2】:

      你也可以按月和count分组

      frame.set_index("date_created").groupby(pd.Grouper(freq='M')).count()
      

      【讨论】:

        猜你喜欢
        • 2021-10-16
        • 1970-01-01
        • 2017-02-28
        • 1970-01-01
        • 1970-01-01
        • 2019-04-17
        • 2011-07-21
        相关资源
        最近更新 更多