【问题标题】:AttributeError: 'list' object has no attribute 'rename'AttributeError:“列表”对象没有属性“重命名”
【发布时间】:2017-01-12 19:34:22
【问题描述】:
df.rename(columns={'nan': 'RK', 'PP': 'PLAYER','SH':'TEAM','nan':'GP','nan':'G','nan':'A','nan':'PTS','nan':'+/-','nan':'PIM','nan':'PTS/G','nan':'SOG','nan':'PCT','nan':'GWG','nan':'PPG','nan':'PPA','nan':'SHG','nan':'SHA'}, inplace=True)     

这是我根据http://www.espn.com/nhl/statistics/player/_/stat/points/sort/points/year/2015/seasontype/2重命名列的代码

我希望两个表具有相同的列名。我在 spyder IDE 中使用 python2。
当我运行上面的代码时,它给了我这个错误:

AttributeError: 'list' object has no attribute 'rename'

【问题讨论】:

  • 您应该发布您的代码。 df 显然是 list 而不是 DataFrame

标签: python html spyder data-science edx


【解决方案1】:

这应该可以解决,df是你的数据集 df.columns=['a','b','c','d','e','f']

【讨论】:

    【解决方案2】:

    最初的问题是很久以前发布的,但我刚刚遇到了同样的问题并在这里找到了解决方案:pd.read_html() imports a list rather than a dataframe

    当您执行pd.read_html 时,您正在创建一个数据框列表,因为该网站可能有多个表。在尝试重命名之前再添加一行代码:

    dfs = pd.read_html(url, header=0)
    

    然后是 df = dfs[0] ;您将拥有 df 变量作为数据框,这将允许您运行您尝试在原始问题中运行的 df.rename 命令。

    【讨论】:

      猜你喜欢
      • 2018-06-06
      • 2015-04-09
      • 2021-07-05
      • 2021-11-14
      • 2018-09-03
      • 2020-10-01
      • 2018-01-16
      • 2016-05-14
      • 2016-12-21
      相关资源
      最近更新 更多