Dask在For循环中延迟

时间:2019-02-22 21:05:36

标签: dask dask-delayed

我正在使用Dask快速完成任务,并充分利用了我正在使用的30核计算机。

Problem =使用“ Study_Visit_ID”列进行分组依据数据框,并从另一列“ DX_ Code”中删除重复项

下面也附有测试示例 Result I wanted

下面是我为Dask使用的代码。

def call(dataframe_name,col_name,uni_col_name,ix):
    df1=pd.DataFrame(columns=dataframe_name.columns)
    temp=dataframe_name[dataframe_name[col_name]==ix]
    df1=df1.append(temp.drop_duplicates(
                   [uni_col_name],keep='first'))
    return df1

def filtering(dataframe_name,col_name,uni_col_name):
    df2=pd.DataFrame(columns=dataframe_name.columns)
    g=dataframe_name[col_name].unique()

    for i in (g):
        #y=delayed(call)(df,'Study_Visit_ID','DX_CODE',i)
        df2=df2.append(delayed(call)(df,'Study_Visit_ID','DX_CODE',i).compute())

    return df2

## Calling the Function
delayed(filtering)(df,'Study_Visit_ID','DX_CODE').compute()

我将遇到错误:

与串行处理相比,效率没有提高”

我按顺序使用上面的代码,并且效果很好。!

如果您需要更多帮助,请告诉我

1 个答案:

答案 0 :(得分:0)

请使用以下代码! 需要知道这是正确的吗?是否

localhost:8000/home/

还是要花时间吗?有人能知道我在哪里吗?