MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   资料存档 (https://www.labfans.com/bbs/forumdisplay.php?f=72)
-   -   MATLAB:比较两个数组的所有元素 (https://www.labfans.com/bbs/showthread.php?t=23106)

poster 2019-12-10 20:30

MATLAB:比较两个数组的所有元素
 
我在MATLAB中有两个矩阵,可以说arr1和arr2的大小分别为1000 * 1000。我想比较它们的元素,并将比较结果保存在结果矩阵resarr ,该结果也是1000 * 1000,这样每个元素:
[LIST][*]如果arr1的元素大于arr2的元素,则将值1放入结果中[*]如果arr2的元素较大,则存储值2[/LIST]但是我不想用for循环来做,因为那比较慢。我怎样才能做到这一点?

[B]编辑:[/B]另外,如果我想在1000 * 1000 * 3结果矩阵中存储不同的RGB值,取决于arr1和arr2的比较,可以在没有慢循环的情况下完成吗?

例如商店(255,0,0)如果arr1较大和(0,255,0)如果arr2较大



[B]回答:[/B]

resarr = 2 - (arr1 > arr2) arr1>arr2比较arr1和arr2,返回1000x1000矩阵,其中包含1,其中arr1较大,否则为0。 2 -部分使它成为一个矩阵,如果arr1大于arr2,则为1,否则为2。

注意:如果arr1和arr2在某个时候是等价的,那么您也会得到2(因为arr1> arr2返回0,那么2-0 = 2)。



[url=https://stackoverflow.com/questions/2209194]更多&回答...[/url]


所有时间均为北京时间。现在的时间是 15:55

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.