scipy.spatial.distance.canberra

scipy.spatial.distance.canberra(u, v, w=None)[源代码]

计算两个一维阵列之间的堪培拉距离。

堪培拉距离定义为

\[D(u,v)=\sum_i\frac{|u_i-v_i|} { |u_i| + |v_i| }。\]
参数
u(n,)类似数组

输入数组。

v(n,)类似数组

输入数组。

w(n,)array_like,可选

中每个值的权重 uv 。默认值为None,即为每个值赋予1.0的权重

退货
canberra双倍

向量之间的堪培拉距离 uv

注意事项

什么时候 u[i]v[i] 对于给定的i为0,则在计算中使用分数0/0=0。

示例

>>> from scipy.spatial import distance
>>> distance.canberra([1, 0, 0], [0, 1, 0])
2.0
>>> distance.canberra([1, 1, 0], [0, 1, 0])
1.0