python - 数据框列 str 替换为列表
问题描述
>>> df1
% score (C) D; start name
0 one 0 0 foo
1 one 1 2 bar
2 two 2 4 foo
3 three 3 6 bar
4 two 4 8 foo
5 two 5 10 bar
6 one 6 12 foo
7 three 7 14 foo
>>> char1 = ["\s+" , "(" , ")" , "%" , ";"]
>>> char2 = ["_" , "" , "", "percent" , ""]
我有上面给出的数据框。我想通过将 char1 中给出的特殊字符替换为 char2 来重命名列名。即 char1[0] 应替换为 char[2] 。我更喜欢使用 df.columns.str.replace。这怎么能以pythonic方式完成?
提前致谢
解决方案
In [23]: char1 = [r"\s+" , r"\(" , r"\)", r"%" , r";"]
In [24]: df.columns = df.columns.to_series().replace(char1, char2, regex=True).tolist()
In [25]: df
Out[25]:
percent_score C D start_name
0 one 0 0 foo
1 one 1 2 bar
2 two 2 4 foo
3 three 3 6 bar
4 two 4 8 foo
5 two 5 10 bar
6 one 6 12 foo
7 three 7 14 foo
推荐阅读
- php - 我无法将 php 与 ms-access db 连接
- javascript - 迭代对象直到找到与标签匹配的值
- nsfilemanager - 从 UIDocumentBrowserViewController 中的 UserDefaults 以编程方式打开文档
- reactjs - Next.js 状态更改不重新渲染 UI
- python - 使用二值化、采样和均值聚合的组合按相同键列分组
- javascript - 如何在 onPress 函数中访问 React Native 标签或元素的属性?
- django - 调用模块的模块不起作用。为什么?
- graphql - 如何基于GraphQL在nestjs中实现Auth0策略
- regex - 从字符串 Google 表格中提取文本
- azure - 天蓝色计算将事件推送到 Azure EventGrid 的速度是否很慢?有没有办法更快地获取事件?