Dask - 搜索与值匹配的行

时间:2017-10-05 21:37:15

标签: python-3.x dask dask-distributed

我试图使用Dask来读取非常大的csv文件的文件夹(它们都适合内存,它们非常大,但我有很多RAM) - 我目前的解决方案如下:

val = 'abc'

df = dd.read_csv('/home/ubuntu/files-*', parse_dates=['date'])
# 1 - df_pd = df.compute(get=dask.multiprocessing.get)
ddf_selected = df.map_partitions(lambda x: x[x['val_col'] == val])
# 2 - ddf_selected.compute(get=dask.multiprocessing.get)

是1(然后使用熊猫)还是2更好?只是想了解一下该做什么?

1 个答案:

答案 0 :(得分:0)

您也可以执行以下操作:

ddf_selected = ddf[ddf['val_col'] == val]

就哪个更好而言,它在很大程度上取决于操作。对于不需要内存中重播的大型数据集,dask.dataframe可能会表现得更好。对于随机访问或完整排序,熊猫的表现可能会更好。

您可能不想使用多处理调度程序。通常,对于Pandas,我们建议使用线程或分布式调度程序。