【发布时间】:2017-06-18 20:39:45
【问题描述】:
所以我对 dask DataFrame.append 有疑问。我从主数据中生成了很多衍生特征,并将它们附加到主数据框中。之后,任何一组列的 dask 图都被炸毁了。这是一个小例子:
%pylab inline
import numpy as np
import pandas as pd
import dask.dataframe as dd
from dask.dot import dot_graph
df=pd.DataFrame({'x%s'%i:np.random.rand(20) for i in range(5)})
ddf = dd.from_pandas(df, npartitions=2)
dot_graph(ddf['x0'].dask)
here is the dask graph as expected
g=ddf.assign(y=ddf['x0']+ddf['x1'])
dot_graph(g['x0'].dask)
here the graph for same column is exploded with irrelevant computation
想象一下,我有很多生成的列。因此,任何特定列的计算图都包括所有其他列的不相关计算。 IE。就我而言,我有 len(ddf['someColumn'].dask)>100000。所以很快就会变得无法使用。
所以我的问题是这个问题可以解决吗?有没有现有的方法可以做到这一点?如果不是 - 我应该寻找什么方向来实现这一点?
谢谢!
【问题讨论】:
标签: python optimization dataframe assign dask