【发布时间】:2020-11-23 23:25:54
【问题描述】:
我正在使用 alphalens 分析基于因素的资产月回报率。我的问题是我的数据框是一个以日期和资产为索引的多索引数据框。
factor_score
date asset
2000-01-30 0001 0.2
2000-01-30 0002 0.1
2000-01-30 0003 -0.2
2000-02-29 0001. 0.1
2000-02-29 0004. 0.4
2000-03-31
当我分析月末价格时,日期的频率是“M”(我使用 MonthEnd 作为偏移量来获取月末日期)。对于 alphalens,时间序列的频率要求是:频率必须是 Day、BDay 或 CustomBusinessDay。我想转换日期的频率以满足要求。
这是我尝试过的:
- 使用 BDay(21),这不起作用,因为添加 21 个工作日并不总是返回月末时间序列(例如,我得到 2000-01-31、2000-02-29、2000-03-29 , 2000-04-27)。它既不是月末日期,也不是业务月末日期。
- 我看到了一些建议
df.resample('M').last()
但这只会保留每个月末的最后一行,而不是所有数据条目。
任何建议将不胜感激。谢谢!
【问题讨论】: