当前位置: 首页>>编程示例 >>用法及示例精选 >>正文


Python pyspark RDD.aggregate用法及代码示例

本文简要介绍 pyspark.RDD.aggregate 的用法。

用法:

RDD.aggregate(zeroValue, seqOp, combOp)

使用给定的组合函数和中性“零值”聚合每个分区的元素,然后聚合所有分区的结果。

函数op(t1, t2)允许修改t1并将其作为结果值返回以避免对象分配;但是,它不应该修改 t2

第一个函数 (seqOp) 可以返回与此 RDD 的类型不同的结果类型 U。因此,我们需要一个操作来将 T 合并到 U 中,并且需要一个操作来合并两个 U

例子

>>> seqOp = (lambda x, y: (x[0] + y, x[1] + 1))
>>> combOp = (lambda x, y: (x[0] + y[0], x[1] + y[1]))
>>> sc.parallelize([1, 2, 3, 4]).aggregate((0, 0), seqOp, combOp)
(10, 4)
>>> sc.parallelize([]).aggregate((0, 0), seqOp, combOp)
(0, 0)

相关用法


注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.RDD.aggregate。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。