簡體   English   中英

在 Pandas DF 中將 MAX 值逐行替換為 1(否則 = 0)

[英]Replace MAX value with 1 (else = 0) rowwise in Pandas DF

我有一個包含很多列的 DF,我如何用(1 或 0)替換這些值,因為每行的 MAX 值為 1,而其他所有值為 0。所以,如果我有

v1 v2 v3
1  3  2
0  4  .5
.1 .1 .7

並得到:

v1 v2 v3
0  1  0
0  1  0
0  0  1   

鑒於先前的計算,數字是浮點數,每行不可能有重復的數字。

謝謝,

我們可以先做max然后eq

df=df.eq(df.max(axis=1),axis=0).astype(int)
   v1  v2  v3
0   0   1   0
1   0   1   0
2   0   0   1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM