Comparando arrays NumPy para que NaNs compare o mesmo

Existe uma maneira idiomática de comparar dois arrays NumPy que tratariam os NaNs como iguais entre si (mas não iguais a nadade outros do que um NaN).

Por exemplo, eu quero as duas matrizes seguintes para comparar iguais:

np.array([1.0, np.NAN, 2.0])
np.array([1.0, np.NAN, 2.0])

e as seguintes duas matrizes para comparar desigual:

np.array([1.0, np.NAN, 2.0])
np.array([1.0, 0.0, 2.0])

Eu estou procurando um método que produzisse um resultado booleano escalar.

O seguinte seria:

np.all((a == b) | (np.isnan(a) & np.isnan(b)))

mas é desajeitado e cria todos esses arrays intermediários.

Existe uma maneira que é mais fácil para os olhos e faz melhor uso da memória?

P.S. Se isso ajudar, os arrays são conhecidos por terem a mesma forma e tipo.

questionAnswers(4)

yourAnswerToTheQuestion