Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 两个矩阵在倍频程中相交_Matlab_Octave - Fatal编程技术网

Matlab 两个矩阵在倍频程中相交

Matlab 两个矩阵在倍频程中相交,matlab,octave,Matlab,Octave,我有两个矩阵。两者都是nx2,值为第1列的id,第2列的值为: | id1 | A1 | | id2 | A2 | | id3 | A3 | | id4 | A4 | 第一个表示关于对象A的数据,第二个表示关于对象B的数据。我需要从两个矩阵中找到通用ID,并将它们放入一个只有值的矩阵中: | A1 | B1 | | A2 | B2 | | A3 | B3 | | A4 | B4 | 条件是每行表示对应于相同id的值。重要提示:忽略两个输入矩阵都不通用的所有id。我的数据集很长,我正在寻找在倍

我有两个矩阵。两者都是nx2,值为第1列的id,第2列的值为:

| id1 | A1 |
| id2 | A2 |
| id3 | A3 |
| id4 | A4 |
第一个表示关于对象A的数据,第二个表示关于对象B的数据。我需要从两个矩阵中找到通用ID,并将它们放入一个只有值的矩阵中:

| A1 | B1 |
| A2 | B2 |
| A3 | B3 |
| A4 | B4 |
条件是每行表示对应于相同id的值。重要提示:忽略两个输入矩阵都不通用的所有id。我的数据集很长,我正在寻找在倍频程中实现它的最佳方法。我想类似的解决方案也可以与matlab一起使用。单个矩阵中的ID是唯一的


注意:我忘了在前面提到,单个矩阵的id对于矩阵来说是唯一的,但它们并不表示行号和没有意义的数字。

这是使用intersect最容易实现的:


使用intersect最容易做到这一点:


是,ID在矩阵中是唯一的。我将补充这一点。是的ID在矩阵中是唯一的。我要补充这一点。
[uniqueIDs, idxA, idxB] = intersect(A(:,1),B(:,1));

result = [A(idxA,2),B(idxB,2)]