Dask .compute所有存储在字典中的Dask DataFrame类型的值



我明白,如果我在一个列表中存储许多Dask数据帧,我可以并行计算所有它们

result = dask.compute(*container_list)

但是如果我将Dask数据框结果作为值存储在字典中,我该如何做类似的事情呢?(如果containe_dict是字典

)
result = dask.compute(*container_dict) 

不能工作

我能做的最好的是用容器遍历字典,但这并不理想,因为我们现在运行dask.compute多次而不是一次。

container_dict = {}
for index, value in enumerate(comb_dict_stock):
container_dict[index] = ddf.loc[index] # index ddf to get the row for index and value in dict
# compute all the dask dataframes in container_dict
for key, value in container_dict.items():
container_dict[key] = value.compute()

dask.compute可以接受字典,并且只计算其中的任务对象:

from dask import compute
from dask.datasets import timeseries
test = {'a': timeseries(freq='1h'), 'b': 123}
result, = compute(test)
print(type(result))
# <class 'dict'>

请注意,compute返回一个结果元组,因此要只存储感兴趣的字典,请使用元组赋值。

相关内容

  • 没有找到相关文章

最新更新