我尝试为包含 NaN 值的每一行检索所有相应的索引。
A B C D
0 11.4 1.3 2.0 NaN
1 11.4 1.3 NaN NaN
2 11.4 1.3 2.8 0.7
3 NaN NaN 2.8 0.7
期望的结果: [0,1,3]
我正在寻找一种 pandas 方式来处理我的庞大数据集。 提前致谢
最佳答案
用于通过boolean indexing
的索引
值进行更好的过滤性能:
idx = df.index[df.isnull().any(axis=1)].tolist()
print (idx)
[0, 1, 3]
说明:
首先比较 NaN
的值:
print (df.isnull())
A B C D
0 False False False True
1 False False True True
2 False False False False
3 True True False False
然后检查每行是否至少有一个DataFrame.any
:
print (df.isnull().any(axis=1))
0 True
1 True
2 False
3 True
dtype: bool
关于python - 检索包含 NaN 值的行的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51980469/