Pandas NameError: name 'df' is not defined

Pandas NameError: name 'df' is not defined

这是我的问题:Python 中关于应用数据科学的 Cousera 课程我正在做作业 2。

问题一 哪个国家在夏季运动会上获得的金牌最多? 此函数应 return 单个字符串值。

这是我的代码:

def answer_one():
  return df[df['Gold'] == df['Gold'].max()].index(0)
answer_one()

这是我遇到的错误:

NameError: name 'df' is not defined

首先,您的 df 对象可能不是全局变量。如果是这样,您可以将 df 作为参数传递给函数。

对于语法,您对索引的访问应该是 .index[0] 而不是 .index(0)

更紧凑的解决方案是 return str(df['Gold'].idxmax())

请尝试使用。希望它能起作用

return df['Gold'].idxmax()