我有pandas dataframe df
,我想打印出变量列表以及类型和缺失字段数(NaN,NA)。
def var_desc(df,dt):
print('============================================')
for c in df.columns:
if df[c].dtype==dt:
e = sum(pd.isnull(df[c]))
print(c+' : '+dt+' | '+e)
print('============================================')
var_desc(df,"object")
var_desc(df,"int64")
行e = sum(pd.isnull(df[c]))
存在一些问题。它给出了以下错误:
TypeError: ufunc 'add' did not contain a loop with signature matching types dtype('S23') dtype('S23') dtype('S23')
如何解决?
答案 0 :(得分:1)
您可以使用
count_nan = len(df) - df.count()
当count返回非NA / null时,这样就可以达到非None记录的数量。
DataFrame.count(axis = 0,level = None,numeric_only = False)[source]¶
返回系列,其中包含超过请求的非NA / null观察数 轴。也适用于非浮点数据(检测NaN和 无)