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


Python dask.bag.Bag.map_partitions用法及代码示例


用法:

Bag.map_partitions(func, *args, **kwargs)

将函数应用于一个或多个袋子的每个分区。

请注意,所有Bag 参数必须进行相同的分区。

参数

func可调用的

要在每个分区上调用的函数。该函数应该期望每个分区都有一个IteratorIterable,并应返回一个IteratorIterable 作为返回。

*args, **kwargs包、项目、延迟或对象

要传递给的参数和关键字参数func.这个包中的分区将是第一个参数,这些将被传递.

例子

>>> import dask.bag as db
>>> b = db.from_sequence(range(1, 101), npartitions=10)
>>> def div(nums, den=1):
...     return [num / den for num in nums]

使用 python 对象:

>>> hi = b.max().compute()
>>> hi
100
>>> b.map_partitions(div, den=hi).take(5)
(0.01, 0.02, 0.03, 0.04, 0.05)

使用 Item

>>> b.map_partitions(div, den=b.max()).take(5)
(0.01, 0.02, 0.03, 0.04, 0.05)

请注意,虽然两个版本都提供相同的输出,但第二个版本会形成一个图形,然后一次计算所有内容,在某些情况下可能更有效。

相关用法


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