目录
1.numpy数据处理替换NAN
(1)代码
#coding = utf-8
import numpy as np
def fill_ndarray(t1):
for i in range(t1.shape[1]):
temp_col = t1[:,i]
nan_num = np.count_nonzero(temp_col !=temp_col)
if nan_num !=0:
temp_not_nan_col = temp_col[temp_col == temp_col]
#选中当前列为nan的位置赋值为均值
temp_col[np.isnan(temp_col)] = temp_not_nan_col.mean()#mean()记得加括号
return t1
if __name__ =='__main__':
t1 = np.arange(24).reshape((4,6)).astype("float")
t1[1,2:] = np.nan
print(t1)
t1= fill_ndarray(t1)
print(t1)
(2)运行结果
[[ 0. 1. 2. 3. 4. 5.]
[ 6. 7. nan nan nan nan]
[12. 13. 14. 15. 16. 17.]
[18. 19. 20. 21. 22. 23.]]
[[ 0. 1. 2. 3. 4. 5.]
[ 6. 7. 12. 13. 14. 15.]
[12. 13. 14. 15. 16. 17.]
[18. 19. 20. 21. 22. 23.]]
Process finished with exit code 0