如何使用dask在并行任务中填充DataFrame?

时间:2018-11-16 07:58:55

标签: python pandas python-multiprocessing python-multithreading dask

我想使用dask来并行化数字运算任务。

此任务仅利用计算机中的一个内核。

作为该任务的结果,我想通过shared_df.loc[len(shared_df)] = [x, 'y']向DataFrame添加一个条目。我的计算机中的所有(四个)并行工作人员/线程应填充此DataFrame。

我必须如何设置dask才能执行此操作?

1 个答案:

答案 0 :(得分:0)

做这样的事情的正确方法,概述如下:

  • 创建一个函数,该函数针对给定参数返回总数据中某些部分的数据框

  • 将此函数包装在dask.delayed中,为每个输入参数创建调用列表,并使用dd.from_delayed创建一个dask-dataframe

  • 如果您确实需要对索引进行排序,并且索引需要沿着与上一步中应用的分块不同的行进行分区,那么您可能需要执行set_index

请阅读以下每个步骤的文档字符串和示例!