我有一个pysparkDataframe,它有id列,它只有字符和字母数字组合作为标识符。
我想从Dataframe中删除仅字符ID。
predictions.select('client_id', 'probability').show(1000,False)
|client_id|probability
|RAJU |[0.9998043367405032,1.9566325949689167E-4]|
|JMS |[0.9998043367405032,1.9566325949689167E-4]|
|ATON |[0.9998043367405032,1.9566325949689167E-4]|
|VK1234 |[0.9998043367405032,1.9566325949689167E-4]|
|KSC |[0.9998043367405032,1.9566325949689167E-4]|
|K122229 |[0.9998043367405032,1.9566325949689167E-4]|
我试过了
predictions2 = predictions.filter(~predictions['client_id'].rlike('[a-zA-Z]'))
但我得到了空排
2条答案
按热度按时间vpfxa7rd1#
试试这个正则表达式:
正则表达式将删除所有带有字母的行,即使行中有数字。您需要确保行只包含字符,方法是指定字符串的开头和结尾,
^
以及$
.+
还需要指定字符串中有1个或多个字母。0lvr5msh2#
您还可以检查否定:“
client_id
至少包含一个数字“: