我有一个片段代码,它来自pandas数据帧的列ID
,并在结果数据框中追加来自唯一ID的所有顶级工资。代码可以正常运行,但对于较大的文件来说有点慢。我想知道是否有人可以提出更有效的方式。
groupe = df.groupby("ID")
t = (group.sort_values(by="Salary", ascending=False)[:1] for yr, group in groupe)
result = pd.DataFrame()
for i in t:
result = result.append(i)
答案 0 :(得分:0)
df.sort_values(by="Salary", ascending=False).groupby('ID').first()
然后,您可以选择工资栏。
修改强>
如果你想保留所有其他列,即使是非数字列,这应该可以完成这项工作:
enable monitor