我使用pyspark 3.0.1。我想从我的pyspark数据帧df的group
列中删除行,其中记录从2K
开始。
我的样本数据看起来像
Name Age Group
John 23 1L12
Rami 32 2K18
Pat 35 1P28
在删除后,我的最终数据帧应该看起来像
Name Age Group
John 23 1L12
Pat 35 1P28
尝试检查startswith
:
df2 = df.filter(~df.Group.startswith("2K"))
或使用rlike
/like
:
df2 = df.filter(~df.Group.rlike("^2K"))
df2 = df.filter(~df.Group.like("2K%"))
您可以使用列方法startswith
:
from pyspark.sql import functions as F
df1 = df.filter(~F.col("Group").startswith("2K"))
df1.show()
#+----+---+-----+
#|Name|Age|Group|
#+----+---+-----+
#|John| 23| 1L12|
#| Pat| 35| 1P28|
#+----+---+-----+