我试图在xts数据上应用延迟,但由于某种原因它不想工作!
library(quantmod)
mystock <- c("GOOG")
getSymbols(mystock, src = "yahoo", from = "2020-01-01", to = "2021-01-01")
Google <- (GOOG)
Google <- subset(GOOG, select = GOOG.Adjusted)
googlets <- ts(Google)
head(googlets)
window5 <- data.frame(x5=Lag(googlets,5), x4=Lag(googlets,4), x3=Lag(googlets,3),
x2=Lag(googlets,2), x1=Lag(googlets,1), googlets)
names(window5) <- c('x5','x4','x3', 'x2', 'x1', 'x')
window5
我能够在转换为ts之前对数据应用滞后。结果显示每行都有一个非滞后的数字。
谁能给我指个方向
使用cbind
作品!
window5 <- cbind(x5=Lag(googlets,5), x4=Lag(googlets,4), x3=Lag(googlets,3),
x2=Lag(googlets,2), x1=Lag(googlets,1), googlets)
colnames(window5) <- c('x5','x4','x3', 'x2', 'x1', 'x')
head(window5)
# x5 x4 x3 x2 x1 x
# [1,] 1367.37 NA NA NA NA NA
# [2,] 1360.66 1367.37 NA NA NA NA
# [3,] 1394.21 1360.66 1367.37 NA NA NA
# [4,] 1393.34 1394.21 1360.66 1367.37 NA NA
# [5,] 1404.32 1393.34 1394.21 1360.66 1367.37 NA
# [6,] 1419.83 1404.32 1393.34 1394.21 1360.66 1367.37
似乎您想要调整关闭,删除时间,执行一些滞后并转换为ts。这可以使用Ad在一行中完成,它将选择出调整列和滞后向量,Lag支持动物园对象。还请注意,我们颠倒了问题中使用的非标准列顺序,但如果您想要这样做,请使用5:0代替0:5。
ts(Lag(zoo(Ad(GOOG)), 0:5))
或通过管道:
library(magrittr)
GOOG %>% Ad %>% zoo %>% Lag(0:5) %>% ts