忽略NaN值,计算每行的最小值

13
例如,我有这个数组并计算每行的均值:
a = np.array([[1,2,3],[2,np.NaN,4]])

mins = np.min(a, axis = 1)

问题是输出结果为:[1. nan]。如何忽略nan并获得结果[1 2]
2个回答

40
另一个更简洁、稍微快一些的选择是使用 numpy.nanmin() 函数,它正好做了你所要求的事情。

4
您可以使用掩码数组。
mins = list(np.min(np.ma.masked_array(a, np.isnan(a)), axis=1))

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接