python - 如何获得 str.split 就地重命名列的结果?
问题描述
我的 df(从 xlsx 导入)有 26 列。其中 21 个名称以(这是荷兰语的“成本”)开头:kosten_
.
两个示例名称:kosten_farmacie
和kosten_generalistische_basis_ggz
.
要更改这些名称,我当然可以编写字典。但是有这么多专栏,我认为最好从摆脱:kosten_
部分开始。
以下代码正确执行此操作,即:我得到一个列名列表,没有:kosten_
。
df.columns.str.split('kosten_').str[1]
现在我希望它在我的 df 中就位。所以我尝试了:
df.rename(columns={(df.columns.str.split('kosten_').str[1])})
这给出了一个错误:TypeError: unhashable type: 'Index'
是否可以使用df.rename
. 像上面那样?也许还有其他建议?
解决方案
您可以直接使用列属性替换
df.columns = df.columns.str.replace('kosten_','')
推荐阅读
- node.js - 这个帖子请求有问题吗?
- php - 在 PHP SQL 中使用函数
- c# - 如何将自定义类型作为参数传递给已编译的 cmdlet?
- google-apps-script - 在特定时间编写脚本以清除数据,归档清除的数据,并在可能的情况下将某些字段移动到单独的工作表
- android - 我的带有 externalProject_add (cmake) 的 android 应用程序不执行 ninja
- javascript - JavaScript - 推送数组的索引
- sql - 面临 3 个表的 SQL 查询问题
- python - 泡菜和打开文件的区别?
- c# - WPF .Net Core 3.1 WPF 转换不顺利(有趣的问题!!)
- python - 如何在 Python 中绘制此函数?