gpt4 book ai didi

python - 在 NumPy 中计算距离矩阵的有效方法

转载 作者:行者123 更新时间:2023-11-30 22:12:54 25 4
gpt4 key购买 nike

我有这个示例数组:

In [38]: arr
Out[38]: array([ 0, 44, 121, 154, 191])

上面只是一个示例,而我的实际数组大小相当巨大。那么,计算距离矩阵的有效方法是什么?

结果应该是:

In [41]: res
Out[41]:
array([[ 0, 44, 121, 154, 191],
[ -44, 0, 77, 110, 147],
[-121, -77, 0, 33, 70],
[-154, -110, -33, 0, 37],
[-191, -147, -70, -37, 0]])

我编写了一个基于 for 循环的实现,但速度太慢。出于效率原因可以将其矢量化吗?

最佳答案

您可以使用broadcasting :

from numpy import array

arr = array([ 0, 44, 121, 154, 191])
arrM = arr.reshape(1, len(arr))
res = arrM - arrM.T

关于python - 在 NumPy 中计算距离矩阵的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50958668/

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