本文介绍了 pandas :删除所有列中的所有NaN值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个包含许多空记录的数据框:
Col_1 Col_2 Col_3
10 5 2
22 7 7
3 9 5
4 NaN NaN
5 NaN NaN
6 4 NaN
7 6 7
8 10 NaN
12 NaN 1
我希望删除列的所有行中的所有NaN值。如您所见,每列具有不同的行数。所以,我想要这样的东西:
Col_1 Col_2 Col_3
10 5 2
22 7 7
3 9 5
4 4 7
6 6 1
7 10
8
12
我试过
filtered_df = df.dropna(how='any')
但它会删除数据帧中的所有记录。我可以如何做到这一点?
推荐答案
DataFrame是一种表格数据结构:您可以查找索引和列,并找到值。如果每列的行数不同,那么索引就没有意义并且具有误导性。A如您所见,每列的行数不同。
dict
可能是更好的替代方案:
{c: df[c].dropna().values for c in df.columns}
或
{c: list(df[c]) for c in df.columns}
这篇关于 pandas :删除所有列中的所有NaN值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!