Dask中合并数据帧期间的内存错误

时间:2017-07-07 19:50:32

标签: python python-2.7 pandas dataframe dask

我有一个以下dask数据帧结构,其中VAR的唯一值是31:

          DATETIME    START       END        VAR     N     A     W
2016-08-15 06:00:00 21600000    22499000    var1    0.0   0.0   0.00
2016-08-15 06:00:00 21600000    22499000    var2    220.0 3.0   211.40
2016-08-15 06:00:00 21600000    22499000    var3    100.0 20.0  218.42

,总形状为(814463,8)

我试图" univot" VAR值用下一个代码分隔列:

# df is Dask dataframe
var_df = None
dt_df = None
for var in VAR_CONSTANTS:
    tmp_df = df3[df3.VAR == var]
    tmp_df = tmp_df.rename(
        columns={
            'N': var[:-1] + '_N',
            'A': var[:-1] + '_T',
            'W': var[:-1] + '_W'}
    )
    tmp_df = tmp_df.drop(['VAR'], axis=1)
    if not var_df:
        var_df = tmp_df.copy()
    else:
        var_df = dd.merge(var_df, tmp_df, how='inner', on=['DATETIME'])

合并10个变量后出现内存错误。

服务器有50 GB RAM和6个内核。 Dask是最新版本

我讨厌这段代码,也许Dask中的代码存在主要问题。

0 个答案:

没有答案