matlab - 避免在 MATLAB 中矩阵之间被零除

标签 matlab matrix division

<分区>

我正在使用 matlab 并且我有两个矩阵:

G =

 1     1     1     1
 1     1     1     1

第二个:

m =

 4     4     4     4
 0     0     0     0

我想要这个结果:

x =

 1/4     1/4     1/4     1/4
  0       0       0       0

到目前为止我所做的是:

x = G ./ m

但它返回:

x =

 1/4     1/4     1/4     1/4
 NaN     NaN     NaN     NaN

如果有被零除,我如何通过设置默认值“0”来避免被零除?

最佳答案

您可以将 NaN 转换回零:

x = G ./ m;
x(isnan(x))=0;      % thanks to comment by @nkjt

或者,如果您在矩阵 m 中也有想要保存的 NaN,您可以执行以下操作:

x(m==0)=0;

关于matlab - 避免在 MATLAB 中矩阵之间被零除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27122456/

相关文章:

r - 使用 R apply 索引矩阵中 1 的位置

matlab - 矩阵作为Matlab函数的输入输出

c++ - 如何实现加法除法?

string - 如何在Matlab中提取字符串向量的第一个单词?

image - Matlab:二进制图像打开到最小矩形大小

matlab - MATLAB 中的滤色器

division - 不同的编程语言如何处理除以 0?

Matlab:eps的逆向?正重量的准确性?

R对矩阵中的每k列求和

python - 如何 append 所有分割的多边形坐标?