我试图用同一行的手段替换我的数据框中的NaN值。熊猫fillna()不按预期方式工作
sample_df = pd.DataFrame({'A':[1.0,np.nan,5.0],
'B':[1.0,4.0,5.0],
'C':[1.0,1.0,4.0],
'D':[6.0,5.0,5.0],
'E':[1.0,1.0,4.0],
'F':[1.0,np.nan,4.0]})
sample_mean = sample_df.apply(lambda x: np.mean(x.dropna().values.tolist()) ,axis=1)
产地:
0 1.833333
1 2.750000
2 4.500000
dtype: float64
但是当我尝试使用fillna()
从一系列值,以填补缺失的数据框中的值,它似乎并没有工作。
sample_df.fillna(sample_mean, inplace=True)
A B C D E F
0 1.0 1.0 1.0 6.0 1.0 1.0
1 NaN 4.0 1.0 5.0 1.0 NaN
2 5.0 5.0 4.0 5.0 4.0 4.0
我想到的是:
A B C D E F
0 1.0 1.0 1.0 6.0 1.0 1.0
1 2.75 4.0 1.0 5.0 1.0 2.75
2 5.0 5.0 4.0 5.0 4.0 4.0
我查看了其他类似的问题似乎并不能揭示问题。在此先感谢您的帮助。