这很可能是由于所
np.nan涉及的输入中的某处而发生的。它的一个示例如下所示-
In [1]: A = np.array([4, 2, 1])In [2]: B = np.array([2, 2, np.nan])In [3]: A<=BRuntimeWarning: invalid value encountered in less_equalOut[3]: array([False, True, False], dtype=bool)
对于所有涉及的比较
np.nan,它将输出
False。让我们确认一下以进行
broadcasted比较。这是一个示例-
In [1]: A = np.array([4, 2, 1])In [2]: B = np.array([2, 2, np.nan])In [3]: A[:,None] <= BRuntimeWarning: invalid value encountered in less_equalOut[3]: array([[False, False, False], [ True, True, False], [ True, True, False]], dtype=bool)
请注意输出中的第三列,该列与包含第三元素的比较相对应
np.nan,
B并得出所有
False值。