CombineValues

Pydoc Pydoc




将元素集合中的键值集合中的可迭代值组合在一起。

Beam 编程指南 中查看更多信息。

示例

在以下示例中,我们创建了一个具有 PCollection 的管道,其中包含产品。然后,我们以多种方式应用 CombineValues 来组合 PCollection 中的键值。

CombineValues 接受一个函数,该函数以 iterable 元素作为输入,并将它们组合在一起以返回单个元素。CombineValues 期望一个键值的 PCollection 元素,其中值为要组合的元素的 iterable

示例 1:使用预定义函数进行组合

我们使用函数 sum,它接受 iterable 数字并将其加在一起。

示例 2:使用函数进行组合

我们希望总和限制在最大值内,因此我们使用 饱和运算

我们定义一个函数 saturated_sum,它接受 iterable 数字并将它们加在一起,直到预定义的最大数字。

示例 3:使用 lambda 函数进行组合

我们还可以使用 lambda 函数来简化 示例 2

示例 4:使用多个参数进行组合

您可以将具有多个参数的函数传递给 CombineValues。它们作为附加的位置参数或关键字参数传递给函数。

在这个示例中,lambda 函数以 valuesmax_value 作为参数。

示例 5:使用 CombineFn 进行组合

组合元素的更一般方法,也是最灵活的方法,是使用继承自 CombineFn 的类。

您可以使用以下组合器转换

Pydoc Pydoc