首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在python数据帧的所有列中替换多个字符串的列表?

如何在python数据帧的所有列中替换多个字符串的列表?
EN

Stack Overflow用户
提问于 2022-01-26 18:55:01
回答 2查看 50关注 0票数 0

我认为自己是中级python程序员的初学者。我感到惊讶的是,我没有找到一个简单的解决方案,我的问题谷歌。我试图在python dataframe的所有列中替换多个字符串的列表。我做了笔直前进的路(下面),它工作得很好。

代码语言:javascript
复制
df.columns=df.columns.str.replace('.', '')
df.columns=df.columns.str.replace(' ','')
df.columns=df.columns.str.replace('(','_')
df.columns=df.columns.str.replace(')','')

我希望减少行数,并在一行中编码所有内容,比如当我试图替换一个句子中的多个字符串时,如何使用多个.replace()。为了前夫,

代码语言:javascript
复制
txt = 'welcome to metaverse_'
txt.replace('w', 'W').replace('m', 'M').replace('_', '!')

out : 'WelcoMe to Metaverse!'

我是否可以减少重复的代码,只需用一行来替换所有列中的多个字符串?

注意:我有10s的列,而不是所有的列都有我想替换的所有字符串。

提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2022-01-26 19:01:26

代码语言:javascript
复制
tr_dict = {'.': '', ' ': '', '(': '_', ')': ''}
df.columns=df.columns.str.translate(df.columns.str.maketrans(tr_dict))
票数 0
EN

Stack Overflow用户

发布于 2022-01-26 19:09:46

您可以尝试使用替换字典,但由于要替换一些“特殊”正则表达式字符,您需要转义它们

代码语言:javascript
复制
df = df.replace({'\\.':'',' ':'','\\(':'_','\\)':''}, regex=True)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70868814

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档