我希望在数据框上使用groupby和resample来获得字段的年度计数 . 假设我有一个数据框结构如下:
df = pd.DataFrame({'year': {0: '2017', 1: '2018', 2: '2016', 3: '2018'}, 'month': {0: '1', 1: '2', 2: '3', 3: '4'}, 'day': {0: '1', 1: '1', 2: '1', 3: '3'}})
df['Date']=pd.to_datetime(df)
#Sorry there is probably and easier way to set up the df
df['B']=[1, 2, 3, 1]
df['C']=[2,3,4, 1]
df=df.ix[:, ['Date', 'B', 'C']]
df.groupby('B').resample('A', on='Date')
如何让最后一行代码按B列分组,并且仍然可以按年或月等重新取样?最后,我正在寻找每年由B组成的C计数 . 如果可能的话,我想在这个过程中保持我的索引 . 谢谢 .
2 回答
您可以按B列和date.dt.year进行分组
Opion 2使用石斑鱼
编辑:使用groupby重新采样的一种循环方式,虽然我不明白为什么会使用它
您可以使用
resample
,但不建议使用