python - 已更改数据框行索引,但旧行索引仍出现在新行索引的列名上方。如何删除它?
问题描述
我有一个数据框,它是从 CSV 文件的输入创建的。
处理后,它最终看起来像这样的东西......
6 col1 col2 col3 col4
7 x1 x2 x3 x4
8 y1 y2 y3 y4
9 z1 z2 z3 z4
侧面的数字是行索引,它等于 CSV 文件本身中的行号。(这很有帮助,因为我需要在输入中标记错误并指出单元格引用)
col1 - col4 是列名。
我希望 col1 成为行索引并使用
df.set_index('col1', drop= True, inplace = True)
但是,这会导致类似以下内容
6 col2 col3 col4
col1
x1 x2 x3 x4
y1 y2 y3 y4
z1 z2 z3 z4
我可以引用单元格,因为我需要使用 iloc 调用列名,但左上角列名的旧行索引真的让我很烦。
有谁知道如何删除它,使数据框看起来像下面两个之一?我需要将它与另一个数据框进行比较以获得相等性,所以我需要它们完全相同。
col2 col3 col4
col1
x1 x2 x3 x4
y1 y2 y3 y4
z1 z2 z3 z4
col1 col2 col3 col4
x1 x2 x3 x4
y1 y2 y3 y4
z1 z2 z3 z4
解决方案
问题是您的列的名称为“6”,请使用DataFrame.rename_axis
:
df = df.rename_axis(columns = None).set_index('col1')
推荐阅读
- r - 如何根据新列复制每一行?
- sql-server - 带有 CHANGE TRACKING 的 SSIS 包保留丢失的记录
- paypal - CSP 问题执行内联脚本 Paypal 按钮
- javascript - 为什么`this`指向对象
- flutter - FlutterDriver - 如何关闭 showDialog
- python - 具有奇数个体的 DEAP eaSimple 算法
- c# - SqlException:将数字转换为数据类型数字的算术溢出错误
- python-3.x - 无法从索引 Python 3 中删除正确的元素
- arduino - 按钮在 case 语句中不起作用
- javascript - req.flash 导致编辑和删除路由出错(Node.js、Javascript 和 Express)