0

我有一个df带有日期df$Date和关闭df$Close列的 data.frame。我正在尝试获得年度回报,但我遇到了问题

我试过

library(quantmod)
yr <- data.frame( periodReturn(df, period='yearly', subset='2008::'))

并且还具有日期作为行名,但无法使其正常工作。感谢您的帮助。

4

1 回答 1

2

如果您只是转换为,您的代码几乎可以工作xts。如果您在转换data.frame为时遇到困难xts,请按照问题评论中的要求提供有关您的数据的更多信息。

getSymbols("SPY", src='yahoo', return.class='data.frame')
#[1] "SPY"
class(SPY)
#[1] "data.frame"
as.data.frame(periodReturn(xts(SPY[["SPY.Close"]], as.Date(rownames(SPY))), 
                           'yearly', subset="2008/"))
           yearly.returns
2008-12-31   -0.382805554
2009-12-31    0.234929078
2010-12-31    0.128409907
2011-12-30   -0.001988072
2012-06-04    0.020717131
于 2012-06-05T20:23:26.503 回答