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

如何基于指定国家列表从Pandas DataFrame创建新DataFrame

高效筛选pandas DataFrame中指定国家的数据

你直接用df['Country Name'] == countries报错的原因是:pandas无法将长度为11507的Series(对应原DataFrame的行数)和长度为4的列表做逐元素比较,两者长度不匹配,因此触发ValueError。

针对多值筛选场景,pandas提供了专门的isin()方法,这是最简洁高效的实现方式,尤其适合筛选10-12个国家的需求:

# 定义目标国家列表(可直接扩展到10-12个)
countries = ['European Union','United Kingdom','United States','Spain', 'Germany', 'France']

# 筛选出属于目标列表的行
df2 = df[df['Country Name'].isin(countries)]

如果需要确认列表中的国家是否都存在于原数据中(避免因拼写错误导致漏选),可以添加验证步骤:

# 检查列表中的国家是否都在原DataFrame的国家集合里
missing = [c for c in countries if c not in df['Country Name'].unique()]
if missing:
    print(f"注意:以下国家未在数据中找到:{missing}")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 07:37:14