R 一维矩阵数据到二维矩阵数据(时间序列)
我有货币兑换的数据,我正试图将数据格式化成一个矩阵,这样我就可以将这个矩阵输入到神经网络中,预测第二天的兑换率。要实现这一点,它需要知道以下值: 2天前,1天前,今天,预计在1D矩阵中。我正在尝试将这个一维矩阵更改为二维矩阵,以便正确显示数据。我已经在下面创建了一个图表,说明了我是如何格式化这些数据的,但我不太明白怎么做,我对R编程还不熟悉。我发现lag()函数可用于在数据中创建此“滞后”,并用于时间序列问题,但除了将此数据格式化为此格式外,我不确定如何使用它 数据格式:(2个示例)R 一维矩阵数据到二维矩阵数据(时间序列),r,matrix,neural-network,time-series,R,Matrix,Neural Network,Time Series,我有货币兑换的数据,我正试图将数据格式化成一个矩阵,这样我就可以将这个矩阵输入到神经网络中,预测第二天的兑换率。要实现这一点,它需要知道以下值: 2天前,1天前,今天,预计在1D矩阵中。我正在尝试将这个一维矩阵更改为二维矩阵,以便正确显示数据。我已经在下面创建了一个图表,说明了我是如何格式化这些数据的,但我不太明白怎么做,我对R编程还不熟悉。我发现lag()函数可用于在数据中创建此“滞后”,并用于时间序列问题,但除了将此数据格式化为此格式外,我不确定如何使用它 数据格式:(2个示例) dat
data在结尾的注释中使用data2
,并假设它是按时间升序排列的,我们使用flag
(快速滞后)来滞后它,na_omit
来省略具有任何na的行,即前两行和最后一行。由于在系列开始之前或系列结束之后不能有数据,因此他们有NA
library(collapse)
na_omit(flag(data2, 2:-1))
给予:
# A tibble: 3 x 4
`L2.USD/EUR` `L1.USD/EUR` `USD/EUR` `F1.USD/EUR`
<dbl> <dbl> <dbl> <dbl>
1 1.37 1.39 1.38 1.37
2 1.39 1.38 1.37 1.38
3 1.38 1.37 1.38 1.37
谢谢你的回复!数据是从2011年到2013年的,所以不是向后的:D.你显示的输出,第一行的前两个元素缺失了吗?第一行应该有2天前的数据,1天前的数据,今天的数据,然后是预期的输出。你有没有这样的格式?我试着在图表中显示,如果不清楚,很抱歉。发布时请将数据缩减到最小大小,同时保留足够的数据来说明问题。当然!我会编辑这篇文章
# A tibble: 3 x 4
`L2.USD/EUR` `L1.USD/EUR` `USD/EUR` `F1.USD/EUR`
<dbl> <dbl> <dbl> <dbl>
1 1.37 1.39 1.38 1.37
2 1.39 1.38 1.37 1.38
3 1.38 1.37 1.38 1.37
# input
data2 <- head(data)
> data
# A tibble: 6 x 1
`USD/EUR`
<dbl>
1 1.37
2 1.39
3 1.38
4 1.37
5 1.38
6 1.37