Dask groupby应用运行速度与Pandas一样慢

时间:2019-07-12 08:50:10

标签: python pandas dask

我希望通过在6核Macbook Pro上的Pandas上使用Dask数据帧来提高性能。但是Dask的运行速度与Pandas数据框一样慢,大约需要5分钟。

我在这里做什么错了?

ddf = dd.from_pandas(df.set_index('customer seq').sort_index(), npartitions = 8)
ddf = ddf.set_index(ddf.index, sorted = True)
paired = ddf.groupby(ddf.index, group_keys =
False).apply(retention_contract).compute(scheduler='processes')

1 个答案:

答案 0 :(得分:0)

性能取决于很多因素。 Dask DataFrame不能提供超过Pandas的速度是很常见的,特别是对于舒适地适合内存的数据集。

但是,如果您的apply函数非常慢,那么您可能会考虑使用进程而不是线程(dask dataframe的默认设置),尤其是该函数绑定了GIL时。有关更多信息,请参见https://docs.dask.org/en/latest/scheduling.html

通常,尽管使用groupby-apply只会增加大量开销,无论您使用的是Pandas还是Dask Dataframe。