【问题标题】:Collect the column name whose value is True for each row in dataframe收集数据框中每一行的值为 True 的列名
【发布时间】:2021-01-30 14:01:56
【问题描述】:

我有一个如下所示的数据框:

**col_A col_B col_C**
False True  False
True  False False
False False True
False False False

我需要为每一行收集值为 True 的列名并创建另一个数据框:

**col**
col_B
col_A
col_C
nan

注意:一行最多有一个True值。

【问题讨论】:

    标签: python python-3.x pandas dataframe data-science


    【解决方案1】:

    这里是idxmaxwhere

    df.idxmax(1).where(df.any(1))
    

    输出:

    0    col_B
    1    col_A
    2    col_C
    3      NaN
    dtype: object
    

    【讨论】:

    • 太棒了!感谢您的快速回答!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多