Select 每个名称每行仅保留最低值
我有一个熊猫数据框,如下所示:Select 每个名称每行仅保留最低值,select,pandas,dataframe,Select,Pandas,Dataframe,我有一个熊猫数据框,如下所示: Name Value A 1 A 2 B 3 B 5 C 1 我只想保留那些值最低的行,但按名称 因此,结果应该如下所示: Name Value A 1 B 3 C 1 如何做到这一点?您可以将groupby与idxmin import pandas as pd # your data # ======================= df N
Name Value
A 1
A 2
B 3
B 5
C 1
我只想保留那些值最低的行,但按名称
因此,结果应该如下所示:
Name Value
A 1
B 3
C 1
如何做到这一点?您可以将
groupby
与idxmin
import pandas as pd
# your data
# =======================
df
Name Value
0 A 1
1 A 2
2 B 3
3 B 5
4 C 1
# processing
# =======================
df.groupby('Name', as_index=False).apply(lambda g: g.loc[g.Value.idxmin()])
Name Value
0 A 1
1 B 3
2 C 1
在groupby
之后使用.min()。reset_index()
是可选的。如果不使用,名称
列将位于索引中
df_grouped = df.groupby('Name').min().reset_index()
df_grouped
Name Value
0 A 1
1 B 3
2 C 1