基于第一列组合Matlab阵列

时间:2013-10-11 13:55:00

标签: matlab

我有2个阵列:

阵列A(4x2):

1 2
4 13
5 14
6 13

数组B(3x2):

2 11
4 34  
7 56

我想得到(6x3):

1  2
2      11
4  13  34
5  14
6  13
7      56

即。根据第一列中的元素组合2个不等大小的数组,并创建一个新的数组,其中包含2个数组的列作为不同的列。

由于

1 个答案:

答案 0 :(得分:1)

你可以这样做:

c = unique([a(:,1); b(:,1)]);
c(:,2:3) = NaN;
c(ismember(c(:,1), a(:,1)), 2) = a(:,2);
c(ismember(c(:,1), b(:,1)), 3) = b(:,2)