我有一个包含
等行的表格df = pandas.DataFrame([[2001, "Jack", 77], [2005, "Jack", 44], [2001, "Jill", 93]],columns=['Year','Name','Value'])
Year Name Value
0 2001 Jack 77
1 2005 Jack 44
2 2001 Jill 93
对于每个唯一Name
,我希望保留具有最大Year
值的行。在上面的例子中,我想得到表
Year Name Value
0 2005 Jack 44
1 2001 Jill 93
这可以用简单的方式完成吗?
答案 0 :(得分:3)
df.drop_duplicates(subset = 'Name', keep = 'last')
Year Name Value
1 2005 Jack 44
2 2001 Jill 93
编写一个编辑过的版本就像@piRSquared一样。
df.sort_values('Year').drop_duplicates(subset = 'Name', keep = 'last')
答案 1 :(得分:3)
<强>解决方案强>
npm install --save auth0-js
+ groupby
nlargest
答案 2 :(得分:3)
df.sort_values('Year').groupby('Name',as_index=False).first()
Out[526]:
Name Year Value
0 Jack 2005 44
1 Jill 2001 93