【问题标题】:How to store a matrix-valued time-series in R?如何在 R 中存储矩阵值时间序列?
【发布时间】:2024-01-19 21:16:01
【问题描述】:

我想知道在 R 中存储(和处理)多元(特别是矩阵值)时间序列的最佳选择是什么。

我有一个大数据框,它存储所有数据以及时间变量(在本例中名为year,作为一列。)

这是我能想到的,但两种选择都有其缺点:

  1. 数据帧列表,例如通过my.list[[i]] <- my.df[,year==i],循环遍历i=2008:2011。但是,我不知道如何提取,例如所有这些列表条目的左上角条目的单变量系列。

  2. 作为ts 对象,但这需要将给定年份的矩阵转换为行向量,这可能有点难以操作。

还有其他更好的方法来存储时间序列矩阵(甚至数据帧)吗?

【问题讨论】:

    标签: r matrix time-series


    【解决方案1】:

    您确实想要 zooxts 包,它们在此处和网络上拥有一百万个示例,以及大量从包小插曲开始的优秀文档。

    zooxts 基本上将日期或日期时间的单个索引列包装在(数字)值矩阵周围。你仍然可以做所有你可以用矩阵做的事情,加上更好/更智能的索引、合并和子集等。

    在上方搜索框中的查询 [r] zoo xts 下查找示例。这(目前)为我提供了 509 个结果,其中许多将作为示例。

    【讨论】:

    • 使用其中一个有什么特别的优势吗?
    • 那么 zoo 更通用一些(“有序对象”)并允许平局(但会发出警告)。 xts 扩展了它,但只使用时间或日期。这些天我经常从后者开始。绘图方法不同。