Python – 输入集合之间的距离
scipy.stats.cdist(array, axis=0)函数计算两个输入集合中每对之间的距离。
Parameters :
array: Input array or object having the elements to calculate the distance between each pair of the two collections of inputs.
axis: Axis along which to be computed. By default axis = 0
Returns : distance between each pair of the two collections of inputs.
代码 #1:二维数组
from scipy.spatial.distance import cdist
a = [[1, 3, 27], [3, 6, 8]]
arr1 = cdist(a, a)
print("Value of cdist is :", arr1)
输出:
Value of cdist is : [[ 0. 19.33907961]
[19.33907961 0. ]]
代码 #2:3D 数组
from scipy.spatial.distance import cdist
arr1 = [[1, 3, 27],
[3, 4, 6],
[7, 6, 3],
[3, 6, 8]]
print("Value of cdist is :", cdist(arr1, arr1))
输出:
Value of cdist is : [[ 0. 21.11871208 24.91987159 19.33907961]
[21.11871208 0. 5.38516481 2.82842712]
[24.91987159 5.38516481 0. 6.40312424]
[19.33907961 2.82842712 6.40312424 0. ]]