我的数据如下:
col1 col2 col3 col4 col5
0 1 0 1 0
1 1 0 0 1
1 1 1 0 1
我想要它如下:-
col1 col2 col3 col4 col5 col6
0 1 0 1 0 col2,col4
1 1 0 0 1 col2,col4,col5
1 1 1 0 1 col1,col2,col3,col5
无论值是1,列名称都应附加在col 6中。我尝试了idx.max(),但是它不起作用可能是因为有多个满足条件的列。谁能帮忙吗?
答案 0 :(得分:1)
您可以在此处进行矩阵乘法:
(df @ (df.columns + ',')).str[:-1]
输出:
col1 col2 col3 col4 col5 col6
0 0 1 0 1 0 col2,col4
1 1 1 0 0 1 col1,col2,col5
2 1 1 1 0 1 col1,col2,col3,col5