在PySpark中,可以使用filter()
方法遍历DataFrame并根据条件获取值。下面是一个示例代码:
from pyspark.sql import SparkSession
spark = SparkSession.builder.getOrCreate()
# 创建一个示例DataFrame
data = [("Alice", 25), ("Bob", 30), ("Charlie", 35)]
df = spark.createDataFrame(data, ["Name", "Age"])
# 根据条件过滤并获取值
filtered_df = df.filter(df.Age > 30)
filtered_values = filtered_df.collect()
# 输出过滤后的结果
for row in filtered_values:
print(row)
输出结果为:
Row(Name='Charlie', Age=35)
在上面的代码中,我们首先创建了一个示例DataFrame df
,包含两列(Name和Age)。然后,我们使用filter()
方法根据条件df.Age > 30
过滤出年龄大于30的行,并将结果存储在filtered_df
中。最后,我们使用collect()
方法将过滤后的结果以Row对象的形式返回,并使用循环遍历打印每一行的值。