分组
Pydoc |
接受元素集合并生成分组的集合,按这些元素的属性分组。
与 GroupByKey
不同,键是根据元素本身动态创建的。
分组示例
在以下示例中,我们创建一个包含水果 PCollection
的管道。
我们使用 GroupBy
按水果名称的首字母对所有水果进行分组。
如果需要,我们可以按由多个属性组成的复合键进行分组。
生成的键是具有两个请求属性的命名元组,并且值相应地分组。
如果要分组的属性是一个属性,则可以在可调用表达式的位置将字符串传递给 GroupBy
。
可以混合使用属性和表达式,例如
聚合
分组通常与聚合一起使用,GroupBy
转换的 aggregate_field
方法可以轻松实现此目的。此方法接受三个参数:要聚合的字段(或表达式)、要聚合的 CombineFn
(或关联的 callable
)以及要存储结果的字段名。例如,假设要计算要购买每种水果的数量。您可以编写
与 GroupBy
中的参数类似,您也可以按表达式聚合多个字段。
当然,也可以多次聚合同一个字段。此示例还说明了全局分组,因为分组键为空。
相关转换
- CombinePerKey 用于使用单个 CombineFn 进行组合。
- GroupByKey 用于使用已知键进行分组。
- CoGroupByKey 用于多个输入集合。
Pydoc |
上次更新时间:2024/10/31
您找到所有需要的内容了吗?
所有内容都有用且清晰吗?您想更改任何内容吗?请告诉我们!