xts包:格式日期仅为秒

时间:2015-02-18 16:44:33

标签: r xts

我有一个矩阵X,其中每列代表一个时间序列。每行不代表一年,一月或一天,而是一秒钟。我想使用xts包,但是日期只是1,2,3,...,nrow(X),即系列中从1到最后一秒,因为每行都是前一秒以前的。这可能吗?我似乎无法弄明白。

1 个答案:

答案 0 :(得分:1)

1)这可以通过动物园完成:

library(zoo)
X <- matrix(1:6, 3) + 100 # test data
zoo(X)

给出以下(1,2,3列是时间):

1 101 104
2 102 105
3 103 106

2) xts不支持原始数字(请参阅?xts)但您可以使用"POSIXct"类以秒表示的事实内部。它将显示为POSIXct日期时间,但在内部它将是您要求的秒数:

library(xts)
x <- xts(X, as.POSIXct(1:nrow(X), origin = "1970-01-01"))

,并提供:

> x
                    [,1] [,2]
1969-12-31 19:00:01  101  104
1969-12-31 19:00:02  102  105
1969-12-31 19:00:03  103  106

> unclass(time(x))
[1] 1 2 3
attr(,"tzone")
[1] ""
attr(,"tclass")
[1] "POSIXct" "POSIXt"