如何更改 pandas DataFrame 最后 7 列的列名?

How to change column names of last 7 columns of pandas DataFrame?

我正在 运行 循环并向现有 DataFrame 添加 7 个新列。在循环的每次迭代之后,我只想更改添加的新列(即最后 7 列)的列名。我尝试使用以下代码行来执行此操作:

df.columns[len(df.columns)-6:len(df.columns)] = ['A1', 'A2', 'A3', 'A4', 'A5', 'A6', 'A7']

这行代码不起作用,我收到一个错误 -

Index does not support mutable operations

我查阅了各种网站,但 none 的方法对我的情况有帮助。我该怎么做才能仅更改最后 7 列的名称?

您可以使用 df.columns.tolist() 将列复制到列表中,修改列表而不是 df.columns 本身,然后将列表分配回 df.columns:

columns = df.columns.tolist()
columns[len(columns)-6:len(columns)] = ['A1', 'A2', 'A3', 'A4', 'A5', 'A6', 'A7']
df.columns = columns