这是一个一维数组:
a = np.array([1, 2, 3])我正在尝试用np.nan替换所有的元素。当然,我会尝试:
a[:] = np.nan它最终返回:
array([-9223372036854775808, -9223372036854775808, -9223372036854775808])所以问题很简单:为什么它不起作用。
附注:目前我只是在使用
a = np.array([np.nan for a_i in a])来实现我想做的事。
发布于 2020-01-30 19:33:14
您的阵列是使用dtype='int64'创建的。如果你把你的数组创建成一个浮点数的数组,它将会工作。
a = np.array([1, 2, 3], dtype=float)
a[:] = np.nan
print(a)将会给予
[nan nan nan]或者,您可以使用初始列表中的至少一个浮点数来创建数组(但最好是显式的)
a = np.array([1., 2, 3])
a[:] = np.nan
print(a)给出
[nan nan nan]https://stackoverflow.com/questions/59985042
复制相似问题