📅  最后修改于: 2023-12-03 14:52:29.689000             🧑  作者: Mango
在 pyspark 中,聚合多个列是非常常见的操作,通常用于统计函数计算和数据汇总。本文将介绍如何在 pyspark 中聚合多个列。
首先,我们需要准备一份示例数据,用来演示如何聚合多个列。假设我们有一个包含两个字段(姓名和年龄)的数据集,用来记录一组人员的基本信息。数据如下:
+-----+---+
| name|age|
+-----+---+
|John | 25|
|Jane | 30|
|John | 35|
|Jane | 40|
+-----+---+
假设我们要计算每个人的平均年龄,可以使用 groupBy()
和 agg()
函数来实现。具体方法如下:
from pyspark.sql.functions import avg
# 读取示例数据
data = spark.createDataFrame([( "John", 25 ), ( "Jane", 30 ), ( "John", 35 ), ( "Jane", 40 )], ["name", "age"])
# 聚合数据
result = data.groupBy("name").agg(avg("age"))
# 显示结果
result.show()
执行上述代码后,程序会对数据集进行分组,然后计算每个人的年龄平均值。输出结果如下:
+----+--------+
|name|avg(age)|
+----+--------+
|John| 30.0|
|Jane| 35.0|
+----+--------+
本文介绍了在 pyspark 中如何聚合多个列。通过示例数据和代码演示,我们了解了使用 groupBy()
和 agg()
函数来实现聚合操作的方法。当你需要对数据进行多个字段的汇总计算时,可以借鉴本文介绍的方法。