如何更改 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
我正在 运行 循环并向现有 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