我有2个数据帧,A和B。我在A中使用一些命令来获取数据透视表(并且我使用aggfunc来获取“持续时间”数据的总计)。之后,我合并了A和B。当我运行命令以显示列名时,A中的列看起来很奇怪,并带有括号和引号,如下所示: 索引([('Name',''), ('代码',''),('sum','持续时间'), '位置'], dtype ='object')
标题示例:
<table border="1">
<tr>
<td>('Name', '')</td>
<td>('Code', '')</td>
<td>('Sum', 'Duration')</td>
<td>Position</td>
</tr>
</table>
如您所见,只有位置(来自数据框B)。我试图使用重命名功能从A更改那3列,但是没有用。
我期望决赛是:
<table border="1">
<tr>
<td>Name</td>
<td>Code</td>
<td>Duration</td>
<td>Position</td>
</tr>
</table>
有人知道我应该使用哪种语法来重命名那些列?实际上,我将文件另存为csv,然后需要手动更改列名。
答案 0 :(得分:0)
使用df.rename(columns=your_column_mapping)
,如下所示:
df.rename(columns={"('Name', '')" : "Name",
"('Code', '')" : "Code",
"('Sum', 'Duration')" : "Duration"})
但是,就像其他人在评论中告诉您的那样,您真的应该首先研究这些奇怪的名字是如何产生的。
重命名方法的文档可以在here中找到。