python - 当它是一个对象时如何改变熊猫键
问题描述
我有一个从另一个系统导入的数据框,这些键给我带来了麻烦。
它们看起来像这样:
'87450912562906\n0972\nT_cust\n[Ah]'
检查 dtype 时返回“对象”。
我想简化并删除导致我另一个问题的 \n 。
我想循环并将密钥更改为:
'C1_0972_cust_[Ah]'
上面示例中“0972”的字符数可以在 4 - 6 之间变化,并且可以是数字和字母。
我努力了:
for name in df.keys():
#name = str(name) <-- does not work
#name.replace('\n','') <-- does not work
我也试过 .rstrip() 只是为了确定我是否能够剪切字符,但我不能。
似乎我无法对这个“对象”做任何事情。(更改密钥的需要来自比较两个数据帧的密钥时遇到问题,怀疑的原因是密钥中的 \n)
解决方案
对于数据框,keys
are columns
,并且您要columns
整体替换:
df.columns = [x.replace('\n', '') for x in df.columns]
或等效地
df.columns = df.columns.str.replace('\n', '')
推荐阅读
- matlab - matlab中如何计算cieplot 1931色度图?
- excel - 如何使用 VBA-Excell 检查特定名称的工作表上每个组合框的名称?
- javascript - React:如何在表单提交时正确路由?
- javascript - 仅当不为空时才向对象添加值 - 不起作用
- unit-testing - 如何模拟根据接收到的参数返回不同值的方法?
- c++ - 多个锐利边缘/特征的不同 3D 网格密度?即分级 tet-mesh 密度
- python - addinfourl 实例没有属性“__getitem__”
- eclipse - Eclipse CDT 内容辅助方法参数提示弹窗位置
- python-3.x - 为什么我没有看到其他班级的标签?
- tsql - 如何对包含连字符的凭证编号进行排序,如 SI-18-08-1、CRV-18-09-1