Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab-更改满足条件的特定元素_Matlab - Fatal编程技术网

Matlab-更改满足条件的特定元素

Matlab-更改满足条件的特定元素,matlab,Matlab,我对matlab没有经验,所以我正在努力编写高效的代码 我有map500阵列,我想用特定条件修改下面所述的阵列的特定位置 map500(map500(x1:x2,y1:y2) < prob(1)) = prob(1); map500(map500(x1:x2,y1:y2)

我对matlab没有经验,所以我正在努力编写高效的代码

我有map500阵列,我想用特定条件修改下面所述的阵列的特定位置

map500(map500(x1:x2,y1:y2) < prob(1)) = prob(1);
map500(map500(x1:x2,y1:y2)

这里我想用prob(1)中的值更改行x1和x2、列y1和y2之间的值,当且仅当子数组中的值小于prob(1),但此代码不起作用,并且如果我运行2 for loop,因为我必须运行这么多循环,所以它占用了太多时间。

您可以使用max函数替换小于prob(1)的值。要专门关注子阵列,应采用以下方法:


map500(x1:x2,y1:y2)=max(prob(1),map500(x1:x2,y1:y2))

您可以使用max函数替换小于prob(1)的值。要专门关注子阵列,应采用以下方法:

map500(x1:x2,y1:y2)=max(prob(1),map500(x1:x2,y1:y2))