Python 3.x 最大计数取决于两列

Python 3.x 最大计数取决于两列,python-3.x,pandas,Python 3.x,Pandas,我有一个数据帧,我想得到电影和系列的最大计数数及其对应年份。df如下所示: df = pd.DataFrame( [ ("movie", "2020", 45), ("movie", "2019", 37), ("series", "2018", 16), ("series", "2

我有一个数据帧,我想得到电影和系列的最大计数数及其对应年份。df如下所示:

df = pd.DataFrame(
     [
       ("movie", "2020", 45),
       ("movie", "2019", 37),
       ("series", "2018", 16),
       ("series", "2010", 45),
    ],
columns=("type", "year", "count"),
 )
我所尝试的:

df[df['type'] == "series"].max()
df[df['type'] == "movie"].max()
但是,这似乎不起作用,因为它返回最大年份和最大计数。例如,对于series one,它将返回:

type     series
year       2018
count        45
dtype: object
它应该返回:

type     series
year       2010
count        45
dtype: object
我应该如何构建查询,使其返回对应年份的最高计数


谢谢

您可以尝试排序并删除重复项:

df.sort_values('count').drop_duplicates('type', keep='last')
输出:

     type  year  count
0   movie  2020     45
3  series  2010     45

您可以尝试对重复项进行排序和删除:

df.sort_values('count').drop_duplicates('type', keep='last')
输出:

     type  year  count
0   movie  2020     45
3  series  2010     45

尝试使用
idxmax

out = df.loc[df.groupby('type')['count'].idxmax()]
Out[200]: 
     type  year  count
0   movie  2020     45
3  series  2010     45

尝试使用
idxmax

out = df.loc[df.groupby('type')['count'].idxmax()]
Out[200]: 
     type  year  count
0   movie  2020     45
3  series  2010     45