我使用以下代码将ohlc(开盘价,最高价,最低价,收盘价)分组为每月汇总。
df = df.groupby(pd.Grouper(freq='M',level=0,label='left')).agg(ohlc_dict)
此代码可以完美地聚合分钟,数天和数周。但是,当我汇总数月时,它会将我作为上个月最后一天(而不是实际月份的第一天)的日期时间值返回。例如:
datetime
2004-05-31 20:59:00
正在汇总到:
datetime
2004-04-30
如果我使用label='right'
,则会返回2005-05-31
,此语句的所需值为2005-05-01
。为什么会发生这种情况以及实现所需声明的最佳方式是什么?
谢谢
答案 0 :(得分:0)
如@MaxU提供的那样,使用freq='MS'
代替'M'
。
您可以在此处查看所有可能的频率:
http://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#timeseries-offset-aliases