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

如何筛选同名但不同平台不同年份发行的电子游戏数据?

筛选CSV中同名但不同平台/年份的游戏

以下是用Python pandas高效解决这个问题的步骤和代码:

  • 首先导入pandas库并读取CSV文件:
import pandas as pd

# 替换成你的CSV文件路径
df = pd.read_csv('game_sales.csv')
  • 第一步:找出存在多条记录的游戏名称
    先统计每个游戏名称出现的次数,筛选出出现次数≥2的名称:
# 获取有重复记录的游戏名称列表
duplicate_names = df['Name'].value_counts()[df['Name'].value_counts() >= 2].index
  • 第二步:筛选出这些游戏的所有记录
    把原数据中属于上述名称的记录全部提取出来:
filtered_games = df[df['Name'].isin(duplicate_names)]
  • 第三步:过滤出满足条件的记录
    对每个游戏名称分组,检查该名称下是否存在不同的Platform或不同的Year,保留符合条件的分组:
# 筛选:同名且存在不同平台 或 不同年份的游戏
result = filtered_games.groupby('Name').filter(lambda group: group['Platform'].nunique() > 1 or group['Year'].nunique() > 1)
  • 查看结果
    可以直接打印结果的前几行验证:
print(result.head())

为什么之前的方法没成功?

  • 双重循环不仅效率低,还容易因为索引或判断逻辑疏漏出错;
  • 单纯按Name, Year, Platform分组会把每个唯一组合单独分组,无法直接筛选出同名但不同平台/年份的记录,而用groupby.filter()可以对每个名称的分组做整体判断,保留符合条件的所有记录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 13:50:47