📅  最后修改于: 2023-12-03 15:18:51.486000             🧑  作者: Mango
如果你在使用 pyspark 进行数据处理时,需要过滤某一列包含特定字符串的记录,你可以使用过滤器函数 filter
或者 where
来实现。
下面是一个例子,假设我们有一个 DataFrame 名为 df
,包含一列名为 subject
的数据:
from pyspark.sql import SparkSession
# 创建 SparkSession
spark = SparkSession.builder.getOrCreate()
# 创建 DataFrame
data = [("1", "Spark作主题的教程"),
("2", "给程序员作介绍的内容"),
("3", "pyspark过滤器列包含作主题的方法"),
("4", "使用pyspark操作数据"),
("5", "这不是作主题的内容")]
df = spark.createDataFrame(data, ["id", "subject"])
# 使用过滤器函数过滤包含 '作主题' 的记录
filtered_df = df.filter(df.subject.contains("作主题"))
# 显示结果
filtered_df.show()
上述代码使用了 contains
函数来过滤 subject
列包含 '作主题' 字符串的记录,并将过滤结果保存在 filtered_df
中。
输出结果如下:
+---+-----------------------+
| id| subject|
+---+-----------------------+
| 1| Spark作主题的教程|
| 3|pyspark过滤器列包含作主题的方法|
+---+-----------------------+
希望对你有所帮助!