我正在使用奥运会的数据编写一个程序。
问的问题是:
哪个国家在夏季奥运会上获得了最多的金牌?
答案是:
美国
这些是一些变量和数据点供参考:
# Summer Gold Silver Bronze Total medals
United Arab Emirates 8 1 0 0 1
United States 26 976 757 666 2399
Uruguay 20 2 2 6 10
下面的函数应该返回单个字符串值,而是返回一个pandas Data Frame
def answer_one():
return df.loc[df['Gold'] == df['Gold'].max()]
如何更正此功能?
答案 0 :(得分:1)
请改为:
def answer_one():
return list(df.loc[df['Gold'] == df['Gold'].max()].index)
如果存在关系,那么应该给出一个有最大金币的国家列表。如果没有联系,它只会给出一个包含一个条目的列表:在您的情况下,结果将是['US']
。
答案 1 :(得分:0)
如果国家/地区名称是您的索引列,则应该这样做:
df.loc[df['Gold'].idxmax()]
答案 2 :(得分:0)
你可以试试这个。它对我有用
df.Gold.idxmax()
干杯
答案 3 :(得分:0)
def answer_one():
return df[df['Gold'] == df['Gold'].max()].index[0]