dask - Dask相当于numpy(convolve + hstack)?
问题描述
convolve
我目前有一个函数,它使用and计算一维 numpy 数组(向量)的滑动总和hstack
。我想使用 dask 创建一个等效的函数,但到目前为止我尝试过的各种方法都没有奏效。
我要做的是计算数组的 n 个数字的“滑动和”,除非任何数字都是 NaN,在这种情况下,总和也应该是 NaN。结果的 (n - 1) 个元素也应该是 NaN,因为假设没有环绕/到达后面。
例如:
input vector: [3, 4, 6, 2, 1, 3, 5, np.NaN, 8, 5, 6]
n: 3
result: [NaN, NaN, 13, 12, 9, 6, 9, NaN, NaN, NaN, 19]
或者
input vector: [1, 5, 7, 2, 3, 4, 9, 6, 3, 8]
n: 4
result: [NaN, NaN, NaN, 15, 17, 16, 18, 22, 22, 26]
我目前使用 numpy 函数的函数:
def sum_to_scale(values, scale):
# don't bother if the number of values to sum is 1 (will result in duplicate array)
if scale == 1:
return values
# get the valid sliding summations with 1D convolution
sliding_sums = np.convolve(values, np.ones(scale), mode="valid")
# pad the first (n - 1) elements of the array with NaN values
return np.hstack(([np.NaN] * (scale - 1), sliding_sums))
如何使用 dask 数组 API(和/或dask_image.ndfilters)执行上述操作以实现相同的功能?
解决方案
推荐阅读
- javascript - 多个 div addClass 和增量后缀
- excel - vba 在数据范围底部插入行并复制格式和公式不起作用
- android - 如果我的手机电池优化关闭,我的手机会处于打盹模式吗?
- google-cloud-platform - 将标头添加到 gcloud 创建订阅推送命令
- node.js - 如何从 Heroku 服务器连接到另一台服务器,节点 js 中已经有 Mysql DB?
- r - 安装和加载包的问题(开罗)
- javascript - React TypeScript:如何使用 fetch 获取表单值和响应代码
- javascript - 如何溢出文本字段输入,以便计算数据的中位数、众数平均值和标准差?
- dialogflow-es - 获取与电报机器人集成的对话流聊天机器人返回的随机句子序列
- json - 不能使用本地创建的矢量,因为“借用”