我有一个DataFrame,其中的列在一行中只有一个True(例如下面的df)。我如何用该行具有True的列索引构成一列?在现实生活中,矩阵很大,因此我避免使用for循环并应用。
df = pd.DataFrame([[True,False,False],
[True,False,False],
[False,True,False],
[False,False,True],
[True,False,False],
])
答案应该像……
df['TrueColIndex'] = [0,0,1,2,1]
谢谢!
答案 0 :(得分:1)
这是idxmax
df.idxmax(1)
Out[444]:
0 0
1 0
2 1
3 2
4 0
dtype: int64