【问题标题】:Removing columns and rows from sparse dataset从稀疏数据集中删除列和行
【发布时间】:2020-06-29 01:13:01
【问题描述】:

我有一个稀疏的 Pandas 数据框,其中包含许多空值,我想对其进行过滤,以便在最终数据集中仅保留具有超过 10 个浮点条目的行和列。我尝试使用现有的 sn-p 代码,但它似乎不起作用:

df.drop([col for col, val = df.count(axis=1, numeric_only='float') if val < 10], axis=1, inplace=True)

谁能告诉我在我的数据框中删除稀疏列的最佳方法是什么?

【问题讨论】:

  • 在您的问题中包含任何错误消息或输出以及您正在处理的数据类型的简化示例通常会很有帮助,这样人们就可以确保给你一个可行的建议。

标签: python pandas


【解决方案1】:

您可以获取每行和每列中非缺失值的数量,检查它是否大于您的阈值,然后仅询问您的条件为真的那些行/值。

kept_rows, kept_columns = df.isnull().sum(1)>10, df.isnull().sum(0)>10
df = df.loc[kept_rows, kept_columns]

【讨论】:

    猜你喜欢
    • 2018-08-12
    • 2018-05-25
    • 2019-07-28
    • 2013-09-03
    • 1970-01-01
    • 1970-01-01
    • 2016-12-21
    • 2017-01-15
    • 1970-01-01
    相关资源
    最近更新 更多