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

如何让R对重复游戏名称仅计数一次以生成正确Top10榜单?

解决同一游戏多平台重复的Top10统计问题

你的核心问题是数据中同一游戏因多平台发布存在重复条目,直接取前10会导致重复游戏占据多个名额,只需先对游戏名称去重(每个游戏保留一条有效记录),再进行Top10筛选即可。

下面提供两种实用处理方式:

方式1:保留每个游戏的最高分记录(推荐)

做最佳游戏排名时,取每个游戏的最高评分来参与统计最合理:

# 按游戏名称分组,每组只保留评分最高的一条记录
unique_games <- ign %>%
  group_by(title) %>%
  slice_max(score, n = 1, with_ties = FALSE) %>% # with_ties=FALSE避免同分出现多条记录
  ungroup()

# 按评分降序取前10个不同游戏
top_10 <- unique_games %>%
  arrange(desc(score)) %>%
  slice(1:10)

# 绘图代码(可按需修改标签)
ggplot(top_10, aes(x=title, y=score))+
  geom_col(fill="blue")+
  theme(axis.text.x = element_text(size=10, angle = 90))+
  ylab("评分")+ 
  xlab("游戏名称")+
  labs(title = "Top 10最佳游戏")

方式2:简单去重(保留每个游戏的第一条记录)

如果不需要特意取最高分,仅需去除重复游戏名称:

# 按游戏名称去重,保留每个游戏首次出现的完整记录
unique_games <- ign %>%
  distinct(title, .keep_all = TRUE)

# 后续筛选Top10和绘图同上
top_10 <- unique_games %>%
  arrange(desc(score)) %>%
  slice(1:10)

ggplot(top_10, aes(x=title, y=score))+
  geom_col(fill="blue")+
  theme(axis.text.x = element_text(size=10, angle = 90))+
  ylab("评分")+ 
  xlab("游戏名称")+
  labs(title = "Top 10最佳游戏")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 12:46:00