MATLAB连接具有不等维度的向量

时间:2013-04-29 17:04:36

标签: matlab

假设我有vector1:

2
3
5
6
7
9

还有一个vector2:

1
2
3

现在我想获得以下矩阵:

2   1
3   2
5   3 
6   1
7   2
9   3

也就是说,我想将vector2添加为vector1旁边的一列,直到新列完全填满为止。我必须用很多不同大小的矢量来做这件事。我事先知道的唯一事情是vector1的长度是vector2长度的整数倍。

有什么建议吗?

3 个答案:

答案 0 :(得分:2)

使用repmat复制较小的矩阵。

a = [2 3 5 6 7 9]';
b = [1 2 3]';
c = [a repmat(b, length(a) / length(b), 1)]

结果:

c =

     2     1
     3     2
     5     3
     6     1
     7     2
     9     3

答案 1 :(得分:0)

然后您可以复制矢量:

[vector1, repmat(vector2,n,1)]

其中nvector2的倍数。

答案 2 :(得分:0)

这可能是另一种选择

[x [y'; y']]