【发布时间】:2018-11-23 14:17:55
【问题描述】:
我在 Windows 中使用 Python 3.5。我有一个数据框,其中'titles' str 类型列包含标题标题,其中一些具有特殊字符,例如â、€、˜。
我正在尝试使用pandas.replace 将这些替换为空格''。我尝试了各种迭代,但没有任何效果。我可以替换常规字符,但这些特殊字符似乎不起作用。
代码运行没有错误,但根本不会发生替换,而是返回原始标题。以下是我已经尝试过的。任何建议将不胜感激。
df['clean_title'] = df['titles'].replace('€','',regex=True)
df['clean_titles'] = df['titles'].replace('€','')
df['clean_titles'] = df['titles'].str.replace('€','')
def clean_text(row):
return re.sub('€','',str(row))
return str(row).replace('€','')
df['clean_title'] = df['titles'].apply(clean_text)
【问题讨论】:
-
我无法重现,您的第三个示例对我有用。您可以发布您的数据框示例吗?
-
假设标题是“‘BetterHash’:比特币核心开发。提出分散比特币挖矿的新协议'
-
这看起来更像是一个编码错误。因此,您最好在编码级别解决这个问题。
-
我在使用 read_csv 导入 csv 文件时尝试了各种编码,例如 utf-8。没有任何效果:(
-
试试
.replace('\xE2\x82\xAC', '')
标签: python regex string pandas dataframe