我有一个专栏" y1"我试图获取对数差异,然后找到滞后1,2,3和4.
$('#form').on('submit')
我期待一旦我记录了对数差异,第一个值就会丢失并被" NA"取代。此外,我期待前两个值将是" NA"一旦我把延迟-1用于系列等等。任何帮助将不胜感激。先感谢您。
答案 0 :(得分:1)
您需要将时间数据附加到您的值,才能正确使用lag
。然后,在时间序列的时间部分中完成移位,同时值保持不变。这是一个例子。
myTs <- ts(dat$y1, start = c(2000, 2), frequency = 12)
myTs
# Feb Mar Apr May Jun Jul Aug Sep
# 2000 125.25 145.23 588.23 244.12 100.25 585.00 782.25 12.25
lag(myTs, 1)
# Jan Feb Mar Apr May Jun Jul Aug
# 2000 125.25 145.23 588.23 244.12 100.25 585.00 782.25 12.25
lag(myTs, -3)
# May Jun Jul Aug Sep Oct Nov Dec
# 2000 125.25 145.23 588.23 244.12 100.25 585.00 782.25 12.25
lag
也定义为(numeric
)向量,但行为有所不同。转换被保存为(开始/结束/步长)属性,但结果很难在以后使用(至少对我而言)
y1 <- dat$y1
y1
# [1] 125.25 145.23 588.23 244.12 100.25 585.00 782.25 12.25
lag(y1, 1)
# [1] 125.25 145.23 588.23 244.12 100.25 585.00 782.25 12.25
# attr(,"tsp")
# [1] 0 7 1
lag(y1, -3)
# [1] 125.25 145.23 588.23 244.12 100.25 585.00 782.25 12.25
# attr(,"tsp")
# [1] 4 11 1