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

如何在Pandas Series中获取对应的索引(国家名称)?

解决Pandas Series按位置获取国家名称的问题

你的代码逻辑和预期完全相反:你把国家名称设成了Series的索引,把数字1-32设成了对应的值,而你原本想要的是「以0、1、2...为索引,国家名称为对应值」。这就是为什么你用dict_country_fifa[1]会取出数字2,而不是目标国家名称。

给你两种解决办法:

办法1:重新创建符合需求的Series

直接把国家列表作为Series的值,让Pandas自动生成0起始的整数索引:

import pandas as pd

# 国家列表
countries = ["Qatar","Ecuador","Senegal","Netherlands","Argentina","Saudi Arabia","Mexico","Poland","Spain","Costa Rica","Germany","Japan","Brazil","Serbia","Switzerland","Cameroon","England","Iran","USA","Wales","France","Australia","Denmark","Tunisia","Belgium","Canada","Morroco","Croatia","Portugal","Ghana","Uruguay","South Korea"]
# 创建Series,自动生成0-31的整数索引
dict_country_fifa = pd.Series(countries)

# 取索引1对应的国家
print(dict_country_fifa[1])  # 输出:Ecuador

办法2:基于现有Series直接获取国家名称

如果不想修改原始代码,可以通过以下两种方式按位置提取国家名称:

  • 用iloc定位元素后取索引名:
# 获取位置1对应的国家名称
print(dict_country_fifa.iloc[1].name)  # 输出:Ecuador
  • 把索引转为列表后按位置访问:
# 将索引转为列表,直接按位置取值
country_names = dict_country_fifa.index.tolist()
print(country_names[3])  # 输出:Netherlands

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 14:15:35