我有类似的数据
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,依此类推,但显示日期为2015年12月23日的NA。
我想当NA在前一天出现时,它应该取前一天的价格。我不想删除那一行,因为我有很多其他价格的数据帧,我会丢失这些信息。
如果我们需要用前一行的价格替换NA,则可以使用zoo
中的na.locf
(假设数据集是用"date"表示的order
)。
library(zoo)
df1$price <- na.locf(df1$price)