【问题标题】:Whats the native, default index class of a xts object?xts 对象的本机默认索引类是什么?
【发布时间】:2015-02-02 20:23:53
【问题描述】:

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

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

xts 对象的默认(原生)索引类是哪一个?一个对象怎么可能同时属于两种类型?

【问题讨论】:

    标签: r xts


    【解决方案1】:

    一个对象可以属于多个类。注意 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

    【讨论】:

    • 你是TTR包的作者吗?
    • 嗯,谢谢你回答我的问题,很高兴认识你。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-29
    • 2012-09-13
    • 1970-01-01
    • 2014-11-15
    • 2013-12-30
    • 2021-07-20
    • 1970-01-01
    相关资源
    最近更新 更多