我有一个有44列的数据帧(df),我想重命名列2:44.我有一个长度为42的列表(namesList),它具有新的列名.然后我尝试使用列表重命名我的列:
df.columns[2:len(df.columns)] = namesList
但是我得到错误:
TypeError: Index does not support mutable operations
为什么我会收到此错误?
解决方法:
您需要生成新的列名称 – 来自旧列的第一个和第二个值以及列表中的另一个值:
df.columns = df.columns[:2].tolist() + namesList
样品:
df = pd.DataFrame({'A':[1,2,3],
'B':[4,5,6],
'C':[7,8,9],
'D':[1,3,5],
'E':[5,3,6],
'F':[7,4,3]})
print (df)
A B C D E F
0 1 4 7 1 5 7
1 2 5 8 3 3 4
2 3 6 9 5 6 3
namesList = ['K','L','M','N']
df.columns = df.columns[:2].tolist() + namesList
print (df)
A B K L M N
0 1 4 7 1 5 7
1 2 5 8 3 3 4
2 3 6 9 5 6 3
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。