删除日期和xts时间序列的观察

时间:2017-11-20 21:39:45

标签: r time-series xts

我对R很新,所以我假设我有一些困惑的问题......

我将数据作为xts时间序列,但我希望从数据中删除一个(或多个)日期。下面是我的数据尾部和类

我想要做的是从[x]系列中删除[2017-11-16]的整行。有一种简单的方法吗?

> tail(x)
           CC1.CLOSE CC1.HIGH CC1.LOW CC1.OPEN
2017-11-09      2185     2198    2169     2196
2017-11-10      2212     2226    2179     2186
2017-11-13      2201     2214    2178     2199
2017-11-14      2155     2204    2152     2196
2017-11-15      2129     2162    2110     2155
2017-11-16      2140     2152    2132     2133
> class(x)
[1] "xts" "zoo"
> str(x)
An ‘xts’ object on 2016-01-04/2017-11-16 containing:
  Data: int [1:474, 1:4] 3063 2998 2920 2902 2956 2841 2799 2831 2796 2844 ...
 - attr(*, "dimnames")=List of 2
  ..$ : NULL
  ..$ : chr [1:4] "CC1.CLOSE" "CC1.HIGH" "CC1.LOW" "CC1.OPEN"
  Indexed by objects of class: [POSIXct,POSIXt] TZ: UTC
  xts Attributes:  
 NULL

非常感谢你的帮助, 奥古斯托

2 个答案:

答案 0 :(得分:0)

这种情况下的解决方案是

x["/2017-11-15"]

有关xts包的详细信息,请查看this cheat sheet

答案 1 :(得分:0)

如果我能帮助你,我相信答案就是这样。

如果您只想删除最后一行,可以像这样从X创建一个新的xts:

x.new <- first(x, (length(MSFT[,1]) - 1))

这将删除最后一行。

您还可以通过执行以下操作来删除索引:coredata(x)这有时可以更轻松地操作数据。

另外查看xts作弊表:)