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

时间:2016-01-02 03:41:19

标签: matlab

我没有matlab的经验,所以我正在尝试编写高效的代码

我有map500数组,我想根据具体情况修改下面所述的数组特定位置。

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

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

1 个答案:

答案 0 :(得分:2)

您可以使用max函数替换小于prob(1)的值。要专注于子阵列,以下内容应该有效:

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