【发布时间】:2022-07-07 16:05:01
【问题描述】:
这个问题来自一个对我来说非常不直观的发现。如果尝试以下操作:
import numpy as np
print(np.array([np.nan]).astype(int))
print(int(np.array([np.nan])))
那么第一个输出是[-9223372036854775808],第二个输出ValueError: cannot convert float NaN to integer。我希望以后的行为,我绝对不希望有人可以将np.nan 转换为int。为什么会这样?为什么可以使用astype 将np.nan 转换为int?它有什么功能或意义吗?
【问题讨论】: