【问题标题】:matlab: find the index of common values at the same entry from two arraysmatlab:从两个数组中找到同一条目的公共值的索引
【发布时间】:2014-01-28 15:08:01
【问题描述】:

假设我有两个大小为pp 很大)的数组,它们的值来自0,1,2。我正在寻找一种方法来查找两个数组在同一个条目中具有值2 的索引,一个具有值2 而另一个具有值1 的索引,等等(例如2 和@ 987654328@、21`2 and0,1and1,1and0`)。

有没有办法在不使用 p 的 for 循环的情况下实现这一点?

【问题讨论】:

    标签: arrays matlab find


    【解决方案1】:

    您可以使用逻辑数组,让AB 成为您的数组(大小一致):

    Indices=find((A==2)&(B==2));
    

    等等。用于其他操作。

    请注意,如果 AB 的维度大于 1,Indices 将是线性索引,如果需要行/列对,请更改为 [x,y]=find((A==2)&(B==2));

    【讨论】:

    • 做 (A==2)&(B==2) 而不是 .*
    • @MattJ 你是对的,因为如果你碰巧需要 OR 操作数,你可以直接切换到|
    猜你喜欢
    • 2015-12-15
    • 2012-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多