使用一些缺失值计算每日股票收益

时间:2015-12-26 13:44:06

标签: r time-series stocks

我有像

这样的数据
date         price 
26-12-2015   112
25-12-2015   115
24-12-2015   119
23-12-2015   NA
22-12-2015   120

我想计算每日回报,所以使用ttr包的语法是

ROC(data$price, type="discrete")

计算结果为(112-115)-1,依此类推,但日期 23-12-2015 会显示NA。

我想要在前一个日期存在NA时应该采用前一天的价格。我不想删除该行,因为我有许多其他价格的数据框,我将丢失该信息。

1 个答案:

答案 0 :(得分:0)

如果我们需要使用前一行的价格替换NA,则可以使用na.locf中的zoo(假设数据集由'date'标记为order)。

library(zoo)
df1$price <- na.locf(df1$price)