创建一组带有缺失值的numpy数组,用均值将缺失值进行填补
时间: 2024-03-02 22:48:06 浏览: 63
缺失值处理-基于随机森林算法的缺失值处理方法
5星 · 资源好评率100%
可以使用numpy库中的random模块生成一组随机数组,然后手动将一部分值设置为缺失值(可以用numpy的nan表示),最后用numpy中的mean函数计算均值并用它来填充缺失值,具体操作如下:
```python
import numpy as np
# 生成一组随机数组
arr = np.random.rand(5, 5)
# 将一部分值设置为缺失值
arr[1, 1] = np.nan
arr[3, 2] = np.nan
# 计算均值
mean = np.nanmean(arr)
# 用均值填充缺失值
arr[np.isnan(arr)] = mean
print(arr)
```
输出结果类似于:
```
array([[0.53070683, 0.42432282, 0.0581102 , 0.86545721, 0.21922738],
[0.9353584 , 0.66666667, 0.4401479 , 0.69394211, 0.42297889],
[0.61689346, 0.44979405, 0.67788301, 0.60527136, 0.42373458],
[0.72657737, 0.24661147, 0.5360197 , 0.50911343, 0.92338264],
[0.92432098, 0.0730433 , 0.47539926, 0.94513926, 0.43796703]])
```
可以看到,缺失值已经被均值填充了。需要注意的是,numpy的mean函数默认忽略缺失值,因此可以直接用它来计算均值。如果想要保留缺失值,可以使用numpy的ma模块。
阅读全文