【发布时间】:2023-03-16 11:45:02
【问题描述】:
假设我有一个矩阵a = [1,2,3;4,1,2;3,4,2]。
我需要创建一个逻辑矩阵,即1,只要a 中有b 的元素。如果我的数组b 是像[1,4] 这样的小数组,则相当于a==4 | a==1。
我知道一种方法是:
b = [1,4];
c = logical(zeros(size(a)));
for i=b
c = c | a==i;
end
如果a 和b 很大,此解决方案可能无法很好地扩展。有没有更简洁的方法来处理更大的数组?
我希望a == b 能给我想要的东西,但它没有。
【问题讨论】:
-
+给出一个double矩阵,而逻辑|给出一个逻辑矩阵。这两个操作在其他方面是相同的。我实际上正在寻找一个解决方案来处理更大的数组,而不仅仅是[1,4] -
嗯,
logical()不只是实现逻辑 OR 运算符无论如何都会做的事情的迂回方式吗?我已经进行了编辑,以使有关可扩展性的问题更加明确
标签: matlab