【问题标题】:How to find the count of same values in a row in a dataframe?如何在数据框中的一行中查找相同值的计数?
【发布时间】:2022-11-24 14:49:33
【问题描述】:

数据框如下:

a     |   b    |   c    |   d
-------------------------------
TRUE    FALSE    TRUE     TRUE
FALSE   FALSE    FALSE    TRUE
TRUE    TRUE     TRUE     TRUE
TRUE    FALSE    TRUE     FALSE

我需要在每一列中找到 TRUE 的计数。 最后一行应包含如下计数:

a     |   b    |   c    |   d  |  count
---------------------------------------
TRUE    FALSE    TRUE     TRUE     3
FALSE   FALSE    FALSE    TRUE     1
TRUE    TRUE     TRUE     TRUE     4
TRUE    FALSE    TRUE     FALSE    2

我试过的逻辑是:

df.groupby(df.columns.tolist(),as_index=False).size()

但它没有按预期工作。 有人可以帮我吗? 谢谢你。

【问题讨论】:

  • df['count'] = df.sum(axis=1)

标签: python pandas dataframe count


【解决方案1】:

因为Trues 的处理方式类似于1,所以您可以使用sum

df['count'] = df.sum(axis=1)

如果TRUEs 是字符串:

df['count'] = df.eq('TRUE').sum(axis=1)

【讨论】:

    猜你喜欢
    • 2013-07-24
    • 2018-09-19
    • 2020-07-30
    • 2020-04-07
    • 2021-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多