我在 python 上有一个数组 A,它有一些由 numpy.nan 创建的 nan 值。我想使用 A[A==numpy.nan] = 0
将所有 nan 值设置为零。它根本不会改变数组。这是为什么?
最佳答案
你想要np.isnan
:
A[np.isnan(A)] = 0
你的代码的问题是(根据 IEEE),nan
不等于任何东西——甚至它本身。
作为旁注,还有
np.isinf
-> (+/- infinity)np.isfinite
->(不是无穷大或 NaN)np.isposinf
-> (+ infinity)np.isneginf
-> (- infinity)
关于python - 将数组的值从 nan 更改为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13301262/