如何从numpy数组中删除包含缺失值的行?
时间: 2023-10-03 11:07:09 浏览: 177
如何实现删除numpy.array中的行或列
要从一个NumPy数组中删除包含缺失值的行,你可以使用`np.isnan()`函数来检查每个元素是否为缺失值,并将这些行索引出来进行删除。
下面是一个示例代码:
```python
import numpy as np
# 创建一个包含缺失值的NumPy数组
arr = np.array([[1, 2, np.nan],
[4, np.nan, 6],
[7, 8, 9]])
# 使用np.isnan()函数检查缺失值
mask = np.isnan(arr).any(axis=1)
# 根据mask删除包含缺失值的行
arr = arr[~mask]
print(arr)
```
这段代码首先创建了一个包含缺失值的二维数组`arr`。然后,使用`np.isnan(arr).any(axis=1)`检查每一行是否包含缺失值,返回一个布尔类型的数组`mask`。最后,使用`arr[~mask]`根据`mask`删除包含缺失值的行。
运行以上代码,输出结果为:
```
[[7. 8. 9.]]
```
可以看到,包含缺失值的前两行已经被成功删除了。
阅读全文