2024-05-15 19:00:18 发布
网友
我有一个输入到熊猫数据框中的雅虎财经每日股价。我想用.resample()把它转换成每月的股票价格,取每个月第一个报价的每日价格。
.resample()
.resample('MS', how='first')
返回每个月的正确价格但是它会将索引更改为每月的第一天,而通常是一个月的第一天,因为假日和周末,报价可能是该月的第二天或第三天。
如何使用resample()只重新采样现有日期而不更改它们?
resample()
我想你想要的是BMS(营业月开始):
.resample('BMS').first()
注意:在pandas 0.18之前,这是使用不推荐的howkwarg完成的:
how
.resample('BMS', how='first')
另一种方法是按月分组,并使用简单的ol'groupby获取第一个条目(例如,使用nth获取每个组中的第一个条目):
.groupby(pd.Grouper(freq='M')).nth(0)
注意:在pandas 0.21之前,这是使用不推荐的TimeGrouper完成的:
TimeGrouper
.groupby(pd.TimeGrouper('M')).nth(0)
我想你想要的是BMS(营业月开始):
注意:在pandas 0.18之前,这是使用不推荐的
how
kwarg完成的:另一种方法是按月分组,并使用简单的ol'groupby获取第一个条目(例如,使用nth获取每个组中的第一个条目):
注意:在pandas 0.21之前,这是使用不推荐的
TimeGrouper
完成的:相关问题 更多 >
编程相关推荐