我有z = np.array([4.4, 3, 0, np.nan, -1, 6]),只是找不到任何快速友好的解决方案来轻松更换。我不敢相信它有时是如此不友好的语言。
我试过:
np.where(z == np.nan, -1, z)
没发生什么事
np.nan_to_num(z, -1)
更改为零
z = [-1 if np.nan(x) else x for x in z]
类型错误:“浮动”对象不可调用
为什么这么简单的事情不能那么简单?我必须只使用 numpy。
使用np.isnan(x). 你可以这样替换:
z = np.array([4.4, 3, 0, np.nan, -1, 6])
z[np.isnan(z)] = -1
print(z)
# [ 4.4 3. 0. -1. -1. 6. ]
Run Code Online (Sandbox Code Playgroud)