Probabilmente accade a causa di uno np.nan
da qualche parte negli ingressi coinvolti. Un esempio è mostrato qui sotto -
In [1]: A = np.array([4, 2, 1])
In [2]: B = np.array([2, 2, np.nan])
In [3]: A<=B
RuntimeWarning: invalid value encountered in less_equal
Out[3]: array([False, True, False], dtype=bool)
Per tutti quei confronti coinvolge np.nan
, sarebbe uscita False
. Confermiamolo per un confronto broadcasted
. Ecco un esempio -
In [1]: A = np.array([4, 2, 1])
In [2]: B = np.array([2, 2, np.nan])
In [3]: A[:,None] <= B
RuntimeWarning: invalid value encountered in less_equal
Out[3]:
array([[False, False, False],
[ True, True, False],
[ True, True, False]], dtype=bool)
Si prega di notare la terza colonna nell'output che corrisponde al confronto che coinvolge terzo elemento np.nan
in B
e che i risultati in tutti i False
valori.
Gli array numpy di uguale lunghezza? – wpercy