當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。