如何从pysparkDataframe中删除以2k开头的记录

fkvaft9z  于 2021-07-12  发布在  Spark
关注(0)|答案(2)|浏览(269)

我正在使用PySpark3.0.1。我想从列中删除行 group 在pysparkDataframedf中,记录以 2K .
我的样本数据看起来像

Name  Age Group
John   23  1L12
Rami   32  2K18
Pat    35  1P28

在删除之后,我的最后一个Dataframe应该是

Name  Age Group
John   23  1L12
Pat    35  1P28
ne5o7dgx

ne5o7dgx1#

试着检查一下 startswith :

df2 = df.filter(~df.Group.startswith("2K"))

或使用 rlike / like :

df2 = df.filter(~df.Group.rlike("^2K"))
df2 = df.filter(~df.Group.like("2K%"))
7kjnsjlb

7kjnsjlb2#

可以使用列方法进行筛选 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|

# +----+---+-----+

相关问题