矢量化numpy多维数组。操作数组非元素wis

2024-09-27 09:34:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我在这里找不到答案,希望你们能帮忙。 我们都知道,我们不应该在python中对数组进行迭代,因为它需要太多时间,所以我想对它进行向量化。 首先是操作: 我的操作将比较两个1D分布:

from pyemd import emd
def vectoriztaion(a=np.ones(25),b=np.ones(25)):
    value = pyemd.emd(np.array(a), np.array(b), helper.get_distance_matrix())
    return value

如您所见,输入a和b是形状(25)的np数组。 现在我计划使用np.vectorize函数

vfunc = np.vectorize(vectoriztaion)
result = vfunc(A,B)

其中A和B都是形状(N,25)的np.数组。 我希望代码返回形状(N)的np.array

运行代码时会出现以下错误:

ValueError: Buffer has wrong number of dimensions (expected 1, got 0)

如果你看到过类似的问题,或者你知道如何运行代码。 请告诉我

提前谢谢


Tags: 答案代码fromvaluenp时间ones数组

热门问题