pyspark - 过滤包含特殊字符集的行
pyspark - filter rows containing set of special characters
我有一个数据框如下:-
df=
a b
goat* bat
ki^ck ball
range@ kick
rick? kill
现在我想找出每列中出现的特殊字符总数。所以我使用 str. contains
函数来找到它,虽然它是 运行 但它没有找到特殊字符。
code:-
special = df.filter(df['a'].contains('[\!\@$\^\&\-\_\;\:\?\.\#\*]'))
print(special.count())
output:- 0
excepted output:- 4
您可能想使用 rlike
而不是 contains
,这样可以搜索正则表达式
df.filter(df['a'].rlike('[\!\@$\^\&\-\_\;\:\?\.\#\*]')).count()
# 4
我有一个数据框如下:-
df=
a b
goat* bat
ki^ck ball
range@ kick
rick? kill
现在我想找出每列中出现的特殊字符总数。所以我使用 str. contains
函数来找到它,虽然它是 运行 但它没有找到特殊字符。
code:-
special = df.filter(df['a'].contains('[\!\@$\^\&\-\_\;\:\?\.\#\*]'))
print(special.count())
output:- 0
excepted output:- 4
您可能想使用 rlike
而不是 contains
,这样可以搜索正则表达式
df.filter(df['a'].rlike('[\!\@$\^\&\-\_\;\:\?\.\#\*]')).count()
# 4