我有一个包含很多NaN值的数据帧:
df =pd.read_csv(文件路径)
df看起来像这样:
x001 x002 x003 x004 x005 x006 x007 x008 x009 x010 ... x296 x297 x298 x299 x300 x301 x302 x303 x304 y
0 1540332 NaN NaN NaN 8.0 1 0 1 0 0 ... 0 NaN 0 0 0 0 NaN 0 NaN 706当我执行以下操作时:
df2 = df.fillna(lambda x: df.median())df2看起来像这样:
x001 x002 x003 x004 x005 x006 x007 x008 x009 x010 ... x296 x297 x298 x299 x300 x301 x302 x303 x304 y
0 1540332 <function <lambda> at 0x110b48488> <function <lambda> at 0x110b48488> <function <lambda> at 0x110b48488> 8 1 0 1 0 0 ... 0 <function <lambda> at 0x110b48488> 0 0 0 0 <function <lambda> at 0x110b48488> 0 <function <lambda> at 0x110b48488> 706
1 823066 4我不明白为什么我看到的是<function <lambda> at 0x110b48488>,而不是用中位数替换NaN值
另外,我也试过了,但结果是一样的。
https://stackoverflow.com/questions/41399714
复制相似问题