gpt4 book ai didi

python - 是否可以在 guvectorize 函数中返回输出数组形状未知的数组

转载 作者:太空宇宙 更新时间:2023-11-03 21:25:49 27 4
gpt4 key购买 nike

我想知道如果我不知道 numba guvectorize 函数先验的数组大小,如何返回数组。我基本上有一个接收向量的函数,并返回一个数组,其大小将在函数中发生变化。我的问题是我无法先验设置返回数组的形状。

例如:

@guvectorize ([(float64[:],int64[:,:])], '(n),()->(n,2)')
def mysegmentation(Thresholding,StimSegments_time):
count = 0
for i in range(Thresholding.shape[0]-1):
if Thresholding[i]==0. and Thresholding[i+1]==1.:
StimSegments_time[count,0] = i
elif Thresholding[i]==1. and Thresholding[i+1]==0.:
StimSegments_time[count,1] = i
count += 1

阈值可以有(1000)个元素,StimSegments_time 可以有(5, 2)或(7, 2)或其他元素(x,2)

最佳答案

我也遇到同样的问题。但我所能提供的帮助是,您不能在装饰器中添加固定数字(即 ->(n,2) 不正确)。

对于这个问题,人们建议在输入中添加一个虚拟数组参数,并在输出中使用其长度,如下所述:

guvectorize not accepting new size variable

关于python - 是否可以在 guvectorize 函数中返回输出数组形状未知的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53847651/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com