如何在python中按月对日期进行分组

如何在python中按月对日期进行分组,python,pandas,pandas-datareader,Python,Pandas,Pandas Datareader,我知道我可以分组,如果我有一个特殊的键,显示数据的对象。但我有一些数据作为索引,看起来像这样 这是索引 DatetimeIndex(['2000-01-03', '2000-01-04', '2000-01-05', '2000-01-06', '2000-01-07', '2000-01-10', '2000-01-11', '2000-01-12', '2000-01-13', '2000-01-14',

我知道我可以分组,如果我有一个特殊的键,显示数据的对象。但我有一些数据作为索引,看起来像这样

这是索引

DatetimeIndex(['2000-01-03', '2000-01-04', '2000-01-05', '2000-01-06',
               '2000-01-07', '2000-01-10', '2000-01-11', '2000-01-12',
               '2000-01-13', '2000-01-14',
               ...
               '2019-12-18', '2019-12-19', '2019-12-20', '2019-12-23',
               '2019-12-24', '2019-12-25', '2019-12-26', '2019-12-27',
               '2019-12-30', '2019-12-31'],
              dtype='datetime64[ns]', name='DATE', length=5217, freq=None)
Index(['DEXUSEU'], dtype='object')
整张桌子都是空的

        DEXUSEU
    DATE    
    2000-01-03  1.0155
    2000-01-04  1.0309
    2000-01-05  1.0335
...
最终,我将获得几个月的最高价值。 我在和你玩

.groupby(pd.Grouper(freq='M')).max()
但我没有达到预期的效果

我的目标是每个月都有最大的价值。我有10年欧元/美元价值对的数据,每天的利率。分组意味着最终我将拥有2000年1月的最大值,2000年2月的最大值…,2019年12月的最大值

.groupby(usdEuro.index.MOUNT).max()将只提供12个值,我希望每个独立年份有12个值。

与“将年份转换为月份”一起使用,并按以下方式选择行:

或者如果可能的话,使用石斑鱼:

df.loc[df.groupby(pd.Grouper(freq='M'))['DEXUSEU'].idxmax()]

你能创造出小的预期产出吗?谢谢你。是的,这是我的坏,我没有提供的例子或预期的结果。我会更新我想我是通过df.loc[usdEuro.groupby([df.index.month,df.index.year])['DEXUSEU'].idxmax()]@Lipton得到的-谢谢,添加了另一个可能的解决方案。
df.loc[df.groupby(pd.Grouper(freq='M'))['DEXUSEU'].idxmax()]