pyspark.RDD.aggregate

抽样。 ( zeroValue:U,seqOp:可调用的((U,T],U],combOp:可调用的((U,U],U] )→你

集合的元素每个分区,然后所有的分区结果,使用给定的组合功能和一个中立的“零价值。”

的函数op (t1,t2)允许修改t1并返回它的结果值,以避免对象分配;然而,它不应该修改t2

第一个函数(seqOp)可以返回不同的结果类型,U,比这个抽样的类型。因此,我们需要一个操作合并T U和一个操作合并成一个两个U

例子

> > >seqOp=(λx,y:(x(0]+y,x(1]+1))> > >combOp=(λx,y:(x(0]+y(0),x(1]+y(1)))> > >sc并行化([1,2,3,4])((0,0),seqOp,combOp)(4)10> > >sc并行化([])((0,0),seqOp,combOp)(0,0)