如何按月分组和另一列熊猫数据框

时间:2020-08-19 03:42:38

标签: pandas dataframe datetime

我有一个如下所示的数据框:

import pandas as pd

df = pd.DataFrame({'Date':[2019-08-06,2019-08-08,2019-08-01,2019-10-12], 'Name':['A','A','B','C'], 'grade':[100,90,69,80]})

我想按日期和日期对数据进行分组,也要按名称分组。然后总结其他列。

因此,所需的输出将与此类似

df = pd.DataFrame({'Date':[2019-08, 2019-08, 2019-10-12], 'Name':['A','B','C'], 'grade':[190,69,80]})

我尝试过grouper

df.groupby(pd.Grouper(freq='M').sum()

但是,它不会播放“名称”列,而只会删除整个列。

2 个答案:

答案 0 :(得分:1)

我认为日期列的类型为datetime。然后与

分组
grouped = df.groupby([df.Date.dt.year, df.Date.dt.month, 'Name']).sum()

答案 1 :(得分:0)

尝试:

df['Date'] = pd.to_datetime(df.Date)
df.groupby([df.Date.dt.to_period('M'), 'Name']).sum().reset_index()

    Date    Name    grade
0   2019-08   A     190
1   2019-08   B     69
2   2019-10   C     80