删除Numpy数组中缺少值的行

时间:2014-08-12 20:07:10

标签: python numpy

我有一个numpy数组(类型numpy.ndarray),其中有几行缺少值(所有缺失的值都是精确的)。如果数组包含缺失值,如何从数组中删除行?

1 个答案:

答案 0 :(得分:2)

np.isfinitenp.anynp.allaxis参数结合使用。

a = np.round(np.random.normal(size=(5, 3)), 1)
a[1, 2] = np.nan
a[2] = np.nan

print(a)
print(a[np.all(np.isfinite(a), axis=1)])  # Removes rows with any non-finite values.
print(a[np.any(np.isfinite(a), axis=1)])  # Removes rows that are all non-finite.