You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Pandas获取2019年评分最高的游戏名称?

如何获取2019年Critic_Score最高的游戏名称?

我需要找出2019年最受欢迎的游戏(以Critic_Score为评判标准)。我已经写出了筛选2019年数据并获取最高Critic_Score值的代码,但不知道怎么拿到这个评分对应的游戏名称,请求帮助!
现有代码如下:

import pandas as pd
df = pd.read_csv(r'C:\Users\imogen\Documents\IT\vgRatings.csv')
most_popular2019 = df[df['Year'] == 2019].max()['Critic_Score']

解决方案

Hey there! 你当前的代码只提取了最高分的数值,没有关联到对应的游戏行数据,所以拿不到游戏名称。我给你两种简单可行的解决办法:

方法一:精准定位单最高分游戏

这种方法用idxmax()获取最高分所在行的索引,再提取对应游戏名称,适合确定只有一个最高分游戏的场景:

import pandas as pd
df = pd.read_csv(r'C:\Users\imogen\Documents\IT\vgRatings.csv')

# 先筛选出2019年的游戏数据
df_2019 = df[df['Year'] == 2019]

# 获取Critic_Score最高的行索引
top_score_index = df_2019['Critic_Score'].idxmax()

# 通过索引提取游戏名称和对应的评分
top_game_name = df_2019.loc[top_score_index, 'Name']
top_game_score = df_2019.loc[top_score_index, 'Critic_Score']

print(f"2019年评分最高的游戏是:{top_game_name},评分:{top_game_score}")

方法二:处理多个同分游戏

如果存在多个游戏共享最高分的情况,这种方法通过排序后筛选,能捕获所有符合条件的游戏:

import pandas as pd
df = pd.read_csv(r'C:\Users\imogen\Documents\IT\vgRatings.csv')

df_2019 = df[df['Year'] == 2019]

# 按Critic_Score降序排序2019年的游戏数据
sorted_2019_games = df_2019.sort_values(by='Critic_Score', ascending=False)

# 获取最高分数值
max_score = sorted_2019_games.iloc[0]['Critic_Score']

# 筛选出所有拥有最高分的游戏名称
top_games = sorted_2019_games[sorted_2019_games['Critic_Score'] == max_score]['Name'].tolist()

print(f"2019年评分最高的游戏(评分:{max_score}):{', '.join(top_games)}")

小提醒:

  • 方法一简洁高效,适合单最高分场景;
  • 方法二更严谨,能覆盖多个游戏同分的边缘情况,不会漏掉任何高分游戏!

内容的提问来源于stack exchange,提问作者user16657522

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.30 06:42:29