【问题标题】:Compare two vectors in MATLAB without using loop在MATLAB中比较两个向量而不使用循环
【发布时间】:2016-02-11 21:20:23
【问题描述】:

给定 MATLAB 中两个不同长度的向量 ab,我希望输出如下:

例子:

a = [3 5 10 20 45 80]
b = [3 5 80]
y = [1 1 0 0 0 1]

其中y 的长度类似于a,其中1 表示b 中存在一个项目,0 表示不存在。

我想在不使用循环的情况下做到这一点。谢谢

请注意,每个向量中的所有数字都只会重复一次,因为它们对应于一些 id。

【问题讨论】:

    标签: matlab loops compare


    【解决方案1】:

    ismember()

    Lia = ismember(A,B) 返回一个包含 1 (true) 的数组,其中 A 中的数据在 B 中找到。在其他地方,它返回 0 (false)。

    a = [3 5 10 20 45 80];
    b = [3 5 80];
    ismember(a,b)
    

    ans = 1 1 0 0 0 1

    【讨论】:

    • 已经深夜了,所以我将回复表示为答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多