我试图在特定年份拆分一个跨越35年的油价时间序列数据。例如,将截至2018年的所有数据合并为一个系列,随后将数据合并为另一个系列。我可以使用split()
函数来执行同样的操作吗?下面是关于时间序列的更多详细信息。
> str(myxts)
An ‘xts’ object on 1986-01-15/2020-09-15 containing:
Data: num [1:417, 1] 22.9 15.5 12.6 12.8 15.4 ...
Indexed by objects of class: [Date] TZ: UTC
xts Attributes:
提前谢谢。
这将创建一个从2000/1/1到2002/9/26的xts对象,然后将其拆分为2000年底之前的所有对象和2001年以后的所有对象。
tt <- seq(as.Date("2000-01-01"), by = "day", length = 1000)
x <- xts(seq_along(tt), tt)
range(time(x))
## [1] "2000-01-01" "2002-09-26"
s <- split(x, as.yearmon(time(x)) >= 2001)
range(time(s[[1]]))
## [1] "2000-01-01" "2000-12-31"
range(time(s[[2]]))
## [1] "2001-01-01" "2002-09-26"