有了时间序列的值,我想把它重塑成一个 nx4 矩阵 [X y],以便将这些值用作机器学习算法的输入和输出值。
X(i) 是一个 1x3 输入向量,y 是输出标量值。
该算法将每个第二个序列值(3 个值)作为输入,以预测第 4 个值。
举一个实际的例子,假设我们有一个序列
[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16]
[X y] 矩阵应如下所示:
[1 3 5 7; 2 4 6 8; 9 11 13 15; 10 12 14 16]
为了获得每隔一行,我编写了以下代码:
vec1 = timeSeries(1:2:end);
XyVec1 = reshape(vec1,4,[])'
类似地,它可以写成偶数:
vec2 = timeSeries(2:2:end);
XyVec2 = reshape(vec2,5,[])'
我不知道该怎么做的事情是交错矩阵 vec1 和 vec2 行得到
[vec(1,:); vec2(1,:);vec1(2,:), vec2(2,:)...]
有谁知道如何交错两个(或更多)矩阵的行?