首页 > 解决方案 > 从 Pandas 列中的行中删除特殊字符的大多数 Pythonic 方法

问题描述

当我调用df.head()我的 Pandas 数据框时,我得到以下信息:

0                                          New YorkÊ
1                                       Los AngelesÊ
2                                           ChicagoÊ
3                                            LondonÊ
4                                           HoustonÊ
Name: cities, dtype: object

如您所见,在列的末尾有一个额外的字符cities。因此,我使用以下代码删除了此字符:

df['cities'] = df['cities'].str.replace('Ê', '')

这行得通。但是,这是删除此字符的最佳(最 Pythonic)方法吗?

谢谢!

标签: pythonpandas

解决方案


您的解决方案本身没有问题,但您最好solution对所有非 ascii 字符应用一个整体

>>> df['cities'] = df['cities'].str.encode('ascii', 'ignore').str.decode('ascii')

推荐阅读