scipy.spatial.distance.
minkowski#
- scipy.spatial.distance.minkowski(u, v, p=2, w=None)[source]#
计算两个一维数组之间的闵可夫斯基距离。
一维数组 u 和 v 之间的闵可夫斯基距离定义为
\[ \begin{align}\begin{aligned}{\|u-v\|}_p = (\sum{|u_i - v_i|^p})^{1/p}.\\\left(\sum{w_i(|(u_i - v_i)|^p)}\right)^{1/p}.\end{aligned}\end{align} \]- 参数:
- u(N,) array_like
输入数组。
- v(N,) array_like
输入数组。
- p标量
差的范数的阶数 \({\|u-v\|}_p\)。请注意,对于 \(0 < p < 1\),三角不等式仅在具有附加乘法因子时才成立,即它只是一个拟度量。
- w(N,) array_like, 可选
u 和 v 中每个值的权重。默认值为 None,它为每个值赋予 1.0 的权重。
- 返回值:
- minkowski双精度浮点数
向量 u 和 v 之间的闵可夫斯基距离。
示例
>>> from scipy.spatial import distance >>> distance.minkowski([1, 0, 0], [0, 1, 0], 1) 2.0 >>> distance.minkowski([1, 0, 0], [0, 1, 0], 2) 1.4142135623730951 >>> distance.minkowski([1, 0, 0], [0, 1, 0], 3) 1.2599210498948732 >>> distance.minkowski([1, 1, 0], [0, 1, 0], 1) 1.0 >>> distance.minkowski([1, 1, 0], [0, 1, 0], 2) 1.0 >>> distance.minkowski([1, 1, 0], [0, 1, 0], 3) 1.0