什么是xts对象的本机默认索引类?

时间:2014-02-26 13:23:59

标签: r xts

我正在将对象转换为xts,不知道我应该选择哪个索引类。 我试着找出系统默认选择的索引类,我输入

class(index(as.xts(sample_matrix)))
[1] "POSIXct" "POSIXt"

哪一个是xts对象的默认(本机)索引类?一个对象如何同时属于两种类?

1 个答案:

答案 0 :(得分:4)

一个对象可以属于几个类。请注意,xts对象继承自zoo,因此xts对象本身有几个类。

> class(as.xts(sample_matrix))
[1] "xts" "zoo"

POSIXct是xts对象索引的默认类。 POSIXt是一个虚拟类,POSIXctPOSIXlt都可以从中继承,这允许您在两个类之间混合操作。

> s <- Sys.time()
> class(s)
[1] "POSIXct" "POSIXt"
> s - as.POSIXlt(s)
Time difference of 0 secs

如果POSIXctPOSIXlt都没有从POSIXt继承,那么就会发生这种情况:

> s - as.Date(s)
[1] "2014-02-26 03:01:54 CST"
Warning message:
Incompatible methods ("-.POSIXt", "-.Date") for "-"

更多详细信息,请参阅?POSIXt