NumPy: calcule médias com NaNs removidos

Como posso calcular os valores médios da matriz ao longo de uma matriz, mas para removernan valores do cálculo? (Para pessoas R, pense emna.rm = TRUE).

Aqui está meu [não] exemplo de trabalho:

import numpy as np
dat = np.array([[1, 2, 3],
                [4, 5, np.nan],
                [np.nan, 6, np.nan],
                [np.nan, np.nan, np.nan]])
print(dat)
print(dat.mean(1))  # [  2.  nan  nan  nan]

Com o NaNs removido, minha saída esperada seria:

array([ 2.,  4.5,  6.,  nan])

questionAnswers(12)

yourAnswerToTheQuestion