pandas Grouper更改日期值

时间:2018-01-06 00:24:13

标签: python pandas

基于此主题:Pandas Subset of a Time Series Without Resampling

目标是在一个月内返回最新日期(带有值),并返回该值。

示例代码:

Date    CumReturn
3/31/2017    1
4/3/2017     .99
5/31/2017    1.022
4/4/2017     100
4/28/2017    1.012
5/1/2017     1.011
6/30/2017    1.033

import pandas as pd
df = pd.read_clipboard(parse_dates = ['Date'])
df.set_index('Date')
df

我认为这样可行:

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

但它返回与最高值(CumReturn)对应的日期,而不是索引中的最大日期。

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

但是,输出显示选择了4月的最后一天,而不是df中的最后一天。 pandas从4月28日到4月30日分配值,并返回此df:

    CumReturn
Date    
2017-03-31  1.000
2017-04-30  1.012
2017-05-31  1.022
2017-06-30  1.033

导致这种行为的原因是什么?我假设熊猫只是在每个月选择最新的日期,但这似乎很奇怪,因为原始数据中没有这些日期。

0 个答案:

没有答案
相关问题