如何解决将一列的数据保留在 Pandas 中,并仅显示其他列中的所有 NAN
目标:我仍想显示此人是谁,以便我可以显示与他们关联的 NAN,以便我可以快速找到丢失信息的人。
考虑这个数据集:
df:
Name Phone Address
John Doe NAN 123 lane
Jenny Gump 222-222-2222 NAN
Larry Bean NAN 561 road
Harry Smidlap 111-111-1111 555 highway
我想清理数据并显示如下内容(类似于过滤空白时的 excel 视图): 然后可能会用“数据存在”的内容填充空数据,或者将其留空。我愿意接受建议。并删除填充了所有数据的行。
df:
Name Phone Address
John Doe NAN
Jenny Gump NAN
Larry Bean NAN
我试过了:
df[df.isnull().any(axis=1)]
这很好用,但我有一个大数据源,而且我看到很多已经有数据的不必要的信息。我只关心看到这个人的名字和他们失踪的东西。
有人有什么想法吗?
解决方法
Mask(替换条件为真的值)任何不为空的地方用空字符串。
df.mask(df.notnull(),'')
这会在多个维度上运行,为“是否替换?”问题传递一组 2D 真/假答案。如果是真的,它会将内容发送到 /dev/null
,而如果不是,它允许它们保持不稳定。
由于您要求 Name
列完整无缺,您可以选择除 Name
之外的其他列并屏蔽它们,然后创建另一个数据框 df2
以删除所有 {{1} }} 值。之后,您可以从 NaN
中删除 df2
中的索引,您可以为您提供仅包含 df
值的行,如下所示。
NaN
这应该给你以下输出。
df.mask((df.columns != 'Name') & (df.notnull()),"",inplace=True)
df2 = df.dropna()
df.drop(df2.index,inplace=True)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。