2024-05-18 19:23:57 发布
网友
我有一个熊猫数据帧:
df id Description 1 2694 A&W #5530 MONTREAL QC 2 ahi DOLLARAMA # 45 MONTREAL QC 3 PC - PAYMENT FROM - *****11*22
我想格式化这个数据帧,这样df["Description"]列不会有#、-、*或{}如:
df["Description"]
#
-
*
我尝试使用python模块re。但我错了。在
谢谢
您可以使用pandas .apply和re.sub删除{},即:
.apply
re.sub
import pandas as pd import re test = ['2694 A&W #5530 MONTREAL QC', 'ahi DOLLARAMA # 45 MONTREAL QC', 'PC - PAYMENT FROM - *****11*22'] def change_me(content): content = re.sub(r"[^A-Z ]+", "", content, 0, re.IGNORECASE) return re.sub(r"[ ]{2,}", " ", content, 0, re.IGNORECASE) df = pd.DataFrame({'Desc':test}) df.Desc = df.Desc.apply(change_me)
Regex Demo and Explanation
附言: 请阅读@ami的评论,.str.replace()是适合此类任务的函数。在
.str.replace()
尝试使用如下正则表达式:
df.Description = df.Description.str.replace(r'[\d#\-\*]', '')
这给了
您可以使用pandas},即:
.apply
和re.sub
删除{^{pr2}$
Regex Demo and Explanation
附言:
请阅读@ami的评论,
.str.replace()
是适合此类任务的函数。在尝试使用如下正则表达式:
这给了
^{pr2}$相关问题 更多 >
编程相关推荐