比较不同长度的向量

Kol*_*ola 1 matlab

我想比较两个不同大小的向量.例如,当我运行以下代码时:

A = [1 4 3 7 9];
B = [1 2 3 4 5 6 7 8 9];

myPadded = [A zeros(1,4)];

C = ismember(myPadded,B)
Run Code Online (Sandbox Code Playgroud)

我得到以下输出:

C = 1 1 1 1 1 0 0 0 0
Run Code Online (Sandbox Code Playgroud)

但是,我想要一个反映比较值位置的输出,因此,我希望输出显示如下:

C = 1 0 1 1 0 0 1 0 1
Run Code Online (Sandbox Code Playgroud)

拜托,我需要一些帮助:)

erf*_*fan 6

有2分.首先,您正在ismember以错误的顺序写入输入.此外,您不需要增长矩阵.只需尝试ismember(B, A),您就会得到您所期望的.


dun*_*dar 5

该函数ismember(myPadded, B)返回一个大小相同的向量myPadded,指示myPadded的第i个元素是否存在于B中.

要得到你想要的,只需反转参数顺序:ismember(B, myPadded).