我有一些看起來像這樣的資料
import pandas as pd
df = pd.DataFrame({'Col1':['a', 'a', 'a', 'a', 'a', 'b', 'b', 'b', 'b', 'b'],
'Col2':[1, 2, 3, 4, 5, 1, 2, 3, 4, 5],
'Col3':[.09, .1, .13, .2, .3, .04, .5, .12, .17, .2]})
df.head(10)
Col1 Col2 Col3
0 a 1 0.09
1 a 2 0.10
2 a 3 0.13
3 a 4 0.20
4 a 5 0.30
5 b 1 0.04
6 b 2 0.50
7 b 3 0.12
8 b 4 0.17
9 b 5 0.20
我想Col3根據Col
輸出看起來像這樣
Col1 Col2 Col3
1 a 2 0.10
7 b 3 0.12
我已經嘗試過這樣的事情,但它并沒有真正適合我。我真正感興趣的是第 2 列中的值。
df[df['Col3'] >= .1 & df['Col1'] == 'a']['Col2'].max()
uj5u.com熱心網友回復:
檢查與groupby idxmax
out = df.loc[df['Col3'].gt(0.1).groupby(df['Col1']).idxmax()]
Out[458]:
Col1 Col2 Col3
2 a 3 0.13
6 b 2 0.50
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/435565.html
上一篇:使用連接更新只執行那些
