数据示例
X = [[np.nan, 2, 3], [4, 6, np.nan], [10, np.nan, 9],[np.nan,3,np.nan]]
array([[nan, 2., 3.],
[ 4., 6., nan],
[10., nan, 9.],
[nan, 3., nan]])
处理缺失值
imp_mean = SimpleImputer(missing_values=np.nan, strategy='mean')#该列已有数据的平均值做填充
print(imp_mean.fit_transform(X))
[[ 7. 2. 3. ]
[ 4. 6. 6. ]
[10. 3.66666667 9. ]
[ 7. 3. 6. ]]
总结
第一列只有两个有效值,平均值为7,于是第一列的两个缺失值被填充为7,平均值的填充是以现有全部值的平均值填充的