You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何从国家索引的DataFrame中获取金牌最多的国家名称字符串

解决方法:获取金牌最多国家的字符串名称

你的代码逻辑没问题,但返回的是Index对象而非单纯的字符串——因为df[条件].index返回的是Pandas的索引类型。这里有两种简单的修正方式:

方法1:提取索引的第一个元素

从你的结果来看,金牌最多的国家只有一个,直接取索引的第0位就能拿到目标字符串:

def answer_one():
    max_gold = df['Gold.2'].max()
    x = df[df['Gold.2'] == max_gold]
    return x.index[0]  # 提取索引的第一个元素,返回字符串

answer_one()

方法2:使用idxmax()更简洁

Pandas专门提供了idxmax()方法,直接返回某列最大值对应的索引标签,一步到位:

def answer_one():
    return df['Gold.2'].idxmax()  # 直接返回最大金牌数对应的国家名称字符串

answer_one()

两种方法最终都会返回'United States'这个纯字符串,而不是Index对象。

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

火山引擎 最新活动