无法替换Python pandas数据帧中的特殊字符

时间:2018-06-13 21:43:47

标签: python regex string pandas dataframe

我在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)

1 个答案:

答案 0 :(得分:1)

我们只能假设您将非ASCI称为“特殊”'字符。

要删除pandas dataframe列中的所有非ASCI字符,请执行以下操作:

df['clean_titles'] = df['titles'].str.replace(r'[^\x00-\x7f]', '')

请注意,这是一个可扩展的解决方案,因为它适用于任何非ASCI char。