Hi我有一个代码,可以在列中打印列名和空值:
A B C D
1 1 4 NAN
2 2 5 NAN
3 NAN 6 NAN
我的代码
[IN]res = list(df.isnull().sum().items())
[IN]print(res)
电流输出
[('A', 0), ('B', 1), ('C', 0), ('D', 3)]
预期输出:
[('B', 1), ('D', 3)]
因此,基本上我希望删除有0个null值的列,并且只返回至少有1个null值
第一个想法是使用boolean indexing
:
s = df.isnull().sum()
res = list(s[s > 0].items())
print (res)
[('B', 1), ('D', 3)]
或使用callable
:进行过滤
res = list(df.isnull().sum()[lambda x: x > 0].items())
或过滤列表理解:
res = [(k, v) for k, v in df.isnull().sum().items() if v > 0]