Python 删除Numpy数组中缺少值的行

Python 删除Numpy数组中缺少值的行,python,numpy,Python,Numpy,我有一个numpy数组(typenumpy.ndarray),其中几行缺少值(精确地说,所有缺少的值)。如果一行包含缺少的值,如何从数组中删除该行?将np.isfinite与np.any或np.all与轴参数结合使用 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 r

我有一个numpy数组(type
numpy.ndarray
),其中几行缺少值(精确地说,所有缺少的值)。如果一行包含缺少的值,如何从数组中删除该行?

np.isfinite
np.any
np.all
参数结合使用

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.