【发布时间】:2017-04-04 05:10:33
【问题描述】:
我确定我需要使用某种应用功能,但我正在努力创建一个来实现这一点的功能。我有一个包含股票代码和月度回报的数据框。我需要计算前 3 个月的回报。它的结构使得每个月都会有 500 行(加上这个数字),其中包含该月的所有股票和回报。我一直在尝试这样的事情,但它不起作用。
mr['Quarterly_Returns'] = mr.groupby('ticker')['monthly_returns'].apply(mr['monthly_returns']+mr['monthly_returns'].shift(-1)+mr['monthly_returns'].shift(-2))
还有建议?
【问题讨论】:
-
您需要
mr['Quarterly_Returns'] = mr.groupby('ticker')['monthly_returns'].apply(lambda x: x+x.shift(-1)+x.shift(-2))吗? -
我不这么认为。这似乎在“monthly_returns”列上给了我一个关键错误。不过我会调查的。
-
对不起,我编辑评论。
-
哇,就是这样。我需要了解有关应用功能的更多信息。太感谢了。如果你把它作为一个解决方案我也可以标记为正确!
-
谢谢,我添加答案。
标签: python pandas group-by apply