在DF中我有3列:1个代码 - 它是唯一的,2个名称 - 你可以在这个列中有2到3倍相同的名称,3个值,
import pandas as pd
df=pd.DataFrame({
'code' : ['42305','42304','42306','B60LZR','BP3R22'],
'Long Name' : ['A.P. MOLLER-MAERSK' ,'A.P. MOLLER-MAERSK','A.P. MOLLER-MAERSK','AGRICULTURAL BK CH','AGRICULTURAL BK CH'],
'Value': [6.9,24.8,13.0,50.1,21.0]},
columns=['code','Long Name','Value'])
如何消除每个“长名称”中“最低”值的“代码”?
如果每个组只有一个最小值,您可以:
df.drop(df.groupby('Long Name').Value.idxmin())
其他:
df[df.Value != df.groupby('Long Name').Value.transform(min)]