如何使用索引为1的另一列中的值创建新列

时间:2019-10-13 07:26:47

标签: r dataframe time-series

我的最终目标是使用日志返回数据来预测将来的数据。我尝试通过首先将日志返回数据转换为日志数据,然后将exp(log data)转换为实现此目标。但是我无法将日志返回数据转换为日志数据。

log =对数返回+ logy(t)-> 我有一个日志返回数据列,我正在尝试创建一个新列(logy(t)),该列采用index = index-1的日志数据值。

例如,如果日志数据为2、3、4、5、6,则logy(t)应该为2,3、4、5。

这是我的处理方法:
name$logyt<-name[row-1]["logdata"]
logyt<-as.numeric(unlist(logyt))
forecast<-predict(model3,newdata=name[205:221,])
model3forecast.ts<-ts(exp(forecast+logyt))

模型3是一个时间序列,而model3forecast.ts应该是根据历史日志返回数据预测的时间序列。我现在停留在创建列逻辑(t)上。

非常感谢您!

1 个答案:

答案 0 :(得分:0)

使用dplyr的一种临时解决方案:

> library(magrittr)
> library(dplyr)
>
> dat <- data.frame(x = 1:6)
>
> dat1 <- dat %>%
+  mutate(x1 = lag(x))
>
> dat1
  x x1
1 1 NA
2 2  1
3 3  2
4 4  3
5 5  4
6 6  5

这是您要寻找的吗?