我正在尝试用以下代码替换 Nan 值:
def NAfunc(df,s):
if df[s].isnull():
df[s]=df[s].fillna(df[s].mean())
else:
pass
return df[s]
data['ColX']=data.apply(lambda x: NAfunc(x, 'ColX'), axis=1) #applying func to missing value column
我收到错误:
<块引用>'float' 对象没有属性 'isnull'
你能告诉我我哪里出错了或者更好的函数代码吗?
答案 0 :(得分:1)
除了使用 df[s].isnull()
,您还可以选择:
import math
def NAfunc(df,s):
if math.isnan(df[s]):
df[s]=df[s].fillna(df[s].mean())
else:
pass
return df[s]