Pandas:如何从列中删除特殊字符


您可以使用以下基本语法从 pandas DataFrame 的列中删除特殊字符:

 df[' my_column '] = df[' my_column ']. str . replace (' \W ', '', regex= True )

此特定示例将从my_column中删除所有既不是字母也不是数字的字符。

以下示例展示了如何在实践中使用此语法。

示例:从 Pandas 的列中删除特殊字符

假设我们有以下 pandas DataFrame,其中包含有关各种篮球运动员的信息:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs$', 'Nets', 'Kings!!', 'Spurs%', '&Heat&'],
                   ' points ': [12, 15, 22, 29, 24]})

#view DataFrame
print (df)

      team points
0 Mavs$ 12
1 Nets 15
2 Kings!! 22
3 Spurs% 29
4 &Heat& 24

假设我们要从团队列值中删除所有特殊字符。

我们可以使用以下语法来做到这一点:

 #remove special characters from team column
df[' team '] = df[' team ']. str . replace (' \W ', '', regex= True )

#view updated DataFrame
print (df)

    team points
0 Mavs 12
1 Nets 15
2 Kings 22
3 Spurs 29
4 Heat 24

请注意,所有特殊字符均已从团队列值中删除。

注意:正则表达式\W用于搜索所有非单词字符,即既不是字母也不是数字的字符。

在这个例子中,我们将每个非单词字符替换为空值,这相当于删除非单词字符。

其他资源

以下教程解释了如何在 pandas 中执行其他常见任务:

如何在 Pandas 中用零替换 NaN 值
如何在 Pandas 中用 NaN 替换空字符串
如何根据Pandas中的条件替换列中的值

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注