Dask实施突变操作

时间:2019-10-07 21:07:47

标签: python distributed-computing dask dask-distributed

我正在尝试将以下numpy操作转换为dask,但由于这是可变操作,因此在NotImplementedError: Item assignment with <class 'tuple'> not supported语句中出现distMap[:, i] = da.sqrt(xSum + ySum).min(axis=0)错误。
以下是代码:

for i, mask in enumerate(masks): 
     bounds = find_boundaries(mask, mode='inner')
     X2, Y2 = np.nonzero(bounds)
     X2 = da.from_array(X2, 'auto')
     Y2 = da.from_array(Y2, 'auto')
     xSum = (X2.reshape(-1, 1) - X1.reshape(1, -1)) ** 2
     ySum = (Y2.reshape(-1, 1) - Y1.reshape(1, -1)) ** 2
     distMap[:, i] = da.sqrt(xSum + ySum).min(axis=0)

我检查了这个答案(Item assignment to Python dask array objects),它说的是一种我无法理解的方法。此外,还提到了da.where方法,但我无法进一步找到有关它的文献。 怎么做?

0 个答案:

没有答案