r - 如何将时间序列列表输入到r中的相关函数
问题描述
我有一个时间序列列表:
ts1 <- ts(seq(1,12), start=c(2019,01), frequency=12)
ts2 <- ts(seq(12,26), start=c(2019,01), frequency=12)
ts3 <- ts(seq(24,30),start=c(2019,01), frequency=12)
list_ts <- list()
list_ts[["a"]] <- ts1
list_ts[["b"]] <- ts2
list_ts[["c"]] <- ts3
我想获得与指定每个元素时格式相同的东西:
ts.intersect(ts1,ts2,ts3)
我试过这个:
lapply(list_ts, ts.intersect)
但根据我的需要,输出不是时间序列矩阵提前谢谢你:)
解决方案
我们可以用do.call
do.call(ts.intersect, list_ts)
# a b c
#Jan 2019 1 12 24
#Feb 2019 2 13 25
#Mar 2019 3 14 26
#Apr 2019 4 15 27
#May 2019 5 16 28
#Jun 2019 6 17 29
#Jul 2019 7 18 30
或与Reduce
Reduce(ts.intersect, list_ts)
或使用reduce
frompurrr
library(purrr)
reduce(list_ts, ts.intersect)
推荐阅读
- python - 在 dart/Flutter 中是否有等效于 python 的 global 关键字?
- amazon-cognito - 自定义属性存储在 AWS Cognito 中的什么位置?
- azure - Azure Active Directory SCIM 映射
- istio - Istio 指标目的地未知
- class - 我需要帮助创建一个名为 Automotive 的类,该类对 vin 具有价值,使模型颜色和为它们制作方法
- sql-server - 如何在 MS SQL Server 中使用 Spring JDBCNamedParameterTemplate 插入 current_timestamp?
- python - 单击表格单元格时如何在新窗口中打开QWebEngineView?
- c++ - 在 C++ 中为全局变量赋值
- numpy - 关于曲线拟合代码中asterik的问题
- css - Elementor:具有收缩包装效果的柔性列