2016-12-30 66 views
0

我有很多NAN值的数据帧:熊猫:fillna工作不正常

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 

我无法弄清楚,而不是替换NAN为什么用中间值,我看到<function <lambda> at 0x110b48488>

P.S我想是说为好,但相同的结果。

+0

为什么不'df.fillna(df.median())'? – Zero

+0

df.fillna(lambda x:df.mean())返回一个新的数据帧,输出相同 – futurenext110

回答