1

我想设置 xts 对象的特定日期,但它会将日期转移一天。

aapl <- as.xts(read.zoo(textConnection("

    2007-04-26, 98.84
    2007-04-27, 99.92
    2007-04-30, 99.80
    2007-05-01, 99.47
    2007-05-02, 100.39"), sep=","))

  idx_aapl <- index(aapl)

  idx_aapl

  xts:::index.xts(aapl)  # makes no difference

  idx_aapl <- idx_aapl + 1

  idx_aapl

如何分配显示的具体日期?我已经阅读了有关 posixct 的一些内容,但我不知道如何将其分配给索引。

4

1 回答 1

1

您需要指定时区。例如

aapl <- as.xts(read.zoo(textConnection("
    2007-04-26, 98.84
    2007-04-27, 99.92
    2007-04-30, 99.80
    2007-05-01, 99.47
    2007-05-02, 100.39"), sep=",", tz="UTC"))

这是因为日期戳是 POSIXct,这意味着它们也有时间组件。

解决它的另一种方法是应用全球时区。例如,将其放在现有脚本的顶部,也可以很好地加载数据:

Sys.setenv(TZ = "UTC")
library(xts)
...
于 2012-12-02T01:24:57.973 回答