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

问题描述 投票:5回答:1

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

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

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

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

python pandas dataframe resampling
1个回答
6
投票

我想你想要的是BMS(营业月开始):

.resample('BMS').first()

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

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

另一种方法是使用groupby month并使用普通的ol'groupby取第一个(例如使用nth获取每组中的第一个条目):

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

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

.groupby(pd.TimeGrouper('M')).nth(0)
© www.soinside.com 2019 - 2024. All rights reserved.