【发布时间】:2017-04-25 04:36:21
【问题描述】:
我不熟悉时间序列数据以及如何在 R 中分析/处理它。我有一个数据框,其中包含 2012 年至 2015 年每天的货币汇率(美元兑欧元)的详细信息。这是如何数据框 dfEurUSDExchange 看起来像。
ExchangeDate | ExchangeRate | Year | YrMon | YrQtr
2012-01-01 | 0.772484 | 2012 | 2012-01 | 2012-Q1
2012-01-02 | 0.773471 | 2012 | 2012-01 | 2012-Q1
2012-01-03 | 0.766388 | 2012 | 2012-01 | 2012-Q1
2012-01-04 | 0.772803 | 2012 | 2012-01 | 2012-Q1
2012-01-05 | 0.781781 | 2012 | 2012-01 | 2012-Q1
我知道我可以使用函数 ts() 将其转换为时间序列对象。但我面临一些问题。这是我正在尝试的。
tsEurUSDExchange = ts(dfEurUSDExchange, start = 2012, frequency = 365)
我收到警告说“在 data.matrix(data) 中:强制引入的 NAs”。我相信这是由于 YrMon 和 YrQtr 下存在的字符数据。
问题 #1:如何解决此警告?
问题#2:如何使用日期列 ExchangeDate?
问题#3:如何使用 ts.plot 仅绘制 ExchangeRate 与时间的关系
tsEurUSDExchange 中的索引?
在这里感谢任何帮助。
【问题讨论】:
-
尝试使用
as.POSIXct (dfEurUSDExchange$YrMon, format="%&-%m")将您的YrMon 转换为日期格式并转换as.Factor(dfEurUSDExchange$YrQtr)。它可能会解决强制问题。 -
老实说,从 xts 或 zoo 开始并在需要时转换回 ts 确实更容易。
-
我试图了解 ts、xts 和 zoo 之间的区别。你能帮帮我吗?
-
目前,我删除了 YrMon 专栏。现在我可以转换为 ts。
标签: r time-series