首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >相关系数函数从NumPy到Dask的转换

相关系数函数从NumPy到Dask的转换
EN

Stack Overflow用户
提问于 2016-12-22 05:36:34
回答 1查看 203关注 0票数 2

我试图通过将一个方法从thunder (使用Spark)转换为等效的numpy版本来评估dask,但我不确定如何使用dask/distributed来编写。

在take中,我可以获取一堆图像,将其转换为序列,并与一些信号进行关联:

代码语言:javascript
复制
imgs = thunder.images.fromrandom((10, 900, 900))
series = imgs.toseries()
signal = series[5, 5, :]
correlated = series.correlate(signal)

numpy版本如下所示:

代码语言:javascript
复制
series = numpy.random.rand(900, 900, 10)
signal = series[5, 5, :]

reshaped = series.reshape(900 * 900, 10)

correlated = numpy.asarray(
    map(lambda x: numpy.corrcoef(x, signal)[0, 1], reshaped))
)
final = correlated.reshape(900, 900)

我正在寻找一些关于如何将其转换为分布式的东西的技巧。

EN

回答 1

Stack Overflow用户

发布于 2016-12-22 06:32:59

也许是像下面这样的东西?

代码语言:javascript
复制
import dask.array as da
import numpy as np

imgs = da.random.random((10, 900, 900), chunks=(1, 900, 900))
reshaped = imgs.reshape((10, 900 * 900))

如果你想把你的图像相互关联起来

代码语言:javascript
复制
result = da.corrcoef(reshaped)
result.compute()

或与其他信号对抗

代码语言:javascript
复制
signal = np.random.random(900 * 900)
result = reshaped.map_blocks(np.corrcoef, signal, dtype=signal.dtype)
result.compute()

但是,我不太熟悉您的应用程序,因此上面的响应可能是有缺陷的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41272293

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档