相关疑难解决方法(0)

python中最快的成对距离度量

我有一维数字,想要计算所有成对的欧氏距离.我有一个方法(感谢SO)用广播这样做,但它效率低,因为它计算每个距离两次.并且它不能很好地扩展.

这是一个例子,通过1000个数字的数组给出了我想要的东西.

import numpy as np
import random
r = np.array([random.randrange(1, 1000) for _ in range(0, 1000)])
dists = np.abs(r - r[:, None])
Run Code Online (Sandbox Code Playgroud)

什么是scipy/numpy/scikit中最快的实现 - 我可以用来做这个,因为它必须扩展到1D数组具有> 10k值的情况.

注意:矩阵是对称的,所以我猜测通过解决它可以获得至少2倍的加速,我只是不知道如何.

python arrays numpy scipy scikit-learn

13
推荐指数
3
解决办法
2万
查看次数

标签 统计

arrays ×1

numpy ×1

python ×1

scikit-learn ×1

scipy ×1