If 语句 Matlab

If statement Matlab

我有以下代码

for a = 1:38;
    for b = 1:41;
        if distance(a,b)== 0;
            distance(a,b) == 1;
        end
    end
end

它适用于 38x41 矩阵。该矩阵具有数字和零值。如何编写将任何零值转换为 1 的 if 语句。我不明白为什么上面的代码不起作用。

此致, 哲

为什么你做不到

distance(distance==0) = 1;

B =

0.00000   0.06275   0.93469
0.44025   0.39606   0.00000
0.67538   0.78137   0.04386


B(B==0) = 1
B =

1.000000   0.062751   0.934691
0.440246   0.396058   1.000000
0.675376   0.781375   0.043856