R里面的LAG只适用于时间序列,不适合于dataframe或者向量,因此需要自己写一个小小的函数来实现lag的功能。
lagdf <- function(x, k) {
c(rep(NA, k), x)[1 : length(x)]
}
y<-lagdf(x,2)
cbind(x,y)
R 里面的diff()函数倒是支持数值向量
另外一种常用的计算lag()的方法
log.yahoo <- log(yhoo.close[-1]/yhoo.close[-length(yhoo.close])
如果直接使用diff(log(data$close))会报错,是因为由于差分,向量的长度缩小了一个,需要采用
c(NA, diff(log(data))),来增加一个向量单元
本文介绍在R语言中如何为dataframe或向量实现LAG功能,并提供了一种自定义函数的方法。此外还讨论了使用diff函数进行差分运算时需要注意的问题。
1897

被折叠的 条评论
为什么被折叠?



