1

我有以下 python 脚本,我在其中使用现有的 pandas 数据框创建了一个 dask 数据框。我正在使用多处理调度程序,因为我的函数使用纯 python。调度程序创建 8 个进程(每个分区一个),但它们按顺序运行,一次一个。

dask_data = ddf.from_pandas(data, npartitions=8)

dask_data = dask_data.assign(
    images_array_1=dask_data.images_array_1.apply(lambda x: [] if x == "" else [int(el) for el in x.split(',')], name='images_array_1'),
    images_array_2=dask_data.images_array_2.apply(lambda x: [] if x == "" else [int(el) for el in x.split(',')], name='images_array_2')
)
dask_data.compute(get=dask.multiprocessing.get)

我只使用 dask 来并行化计算,我的数据集足够小,可以留在主内存中。

是否可以并行运行每个进程?

4

1 回答 1

0

您需要在应用之前执行 map_partitions 才能并行运行它。

于 2018-07-09T02:09:10.533 回答