Pandas在我的数据中第一天重新采样

时间:2015-04-25 22:44:45

标签: python pandas dataframe resampling

我在大熊猫数据框中导入雅虎财务每日股票价格。我想使用.resample()将每月的第一个QUOTED每日价格的价格转换为月度股票价格。

.resample('MS', how='first')

返回每个月的正确价格它会将指数更改为该月的第一天,而一般情况下,一个月的第一天可能是报价的第二天或第三天,因为假期和周末。

如何仅通过重新采样现有日期而不更改现有日期来使用resample()

1 个答案:

答案 0 :(得分:6)

我认为您想要的BMS(营业月开始):

.resample('BMS').first()

注意:在早期的pandas中,这是使用已弃用的how kwarg完成的:

.resample('BMS', how='first')

另一种选择是按月份分组,然后使用普通的ol' groupby(例如,使用nth获取每个组中的第一个条目):

.groupby(pd.Grouper(freq='M')).nth(0)

注意:在早期的pandas中,这是使用已弃用的TimeGrouper

完成的
.groupby(pd.TimeGrouper('M')).nth(0)