【问题标题】:How to change an element of a list [duplicate]如何更改列表的元素[重复]
【发布时间】:2019-10-21 08:31:24
【问题描述】:

我将数据框的列索引分配给一个对象。

Object1 = df.columns

接下来,我尝试更改此列表的第二个元素。

Object1[1]='Fred'

当我尝试更改列表元素时出现以下错误。

'TypeError: Index does not support mutable operations'

我只是希望第二个元素(列)名称是“Fred”。

【问题讨论】:

  • 不确定我是否正确,您是否要更改列的名称?你在用熊猫吗?
  • 数据框 in 中的值是可变的,但索引和列名不是。要更改列名,您必须添加一个具有该名称的新列并删除旧列
  • 我正在尝试更改列的名称。实际代码是一个 for 循环,我试图重命名循环执行的每种类型的特定列。我得到了同样的错误,所以我展示了一个简单的例子。

标签: python list


【解决方案1】:

您的问题的答案。列是一个索引,它们是不可变的。但是,您可以执行以下操作:

test = df.columns.values
test[1] = 'Fred'
df.columns = test

或者像这样使用pandas.DataFrame.rename()的专用方法:

df.rename(columns={df.columns[1]: "Fred"}, inplace=True)

【讨论】:

    【解决方案2】:

    尝试以下方法:

    Object1 = df.columns.values
    Object1[1]='Fred'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-27
      • 2017-06-03
      • 2018-05-27
      • 2021-11-16
      • 1970-01-01
      • 2018-11-28
      相关资源
      最近更新 更多