scipy.spatial.distance.

dice#

scipy.spatial.distance.dice(u, v, w=None)[source]#

计算两个布尔型一维数组之间的 Dice 不相似度。

uv 之间的 Dice 不相似度为

\[\frac{c_{TF} + c_{FT}} {2c_{TT} + c_{FT} + c_{TF}}\]

其中 \(c_{ij}\)\(\mathtt{u[k]} = i\)\(\mathtt{v[k]} = j\) 出现的次数,其中 \(k < n\)

参数:
u(N,) array_like, bool

输入一维数组。

v(N,) array_like, bool

输入一维数组。

w(N,) array_like, 可选

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

返回:
dicedouble

一维数组 uv 之间的 Dice 不相似度。

备注

此函数计算 Dice 不相似度指数。要计算 Dice 相似度指数,请使用相似度 = 1 - 不相似度将其转换为另一个。

示例

>>> from scipy.spatial import distance
>>> distance.dice([1, 0, 0], [0, 1, 0])
1.0
>>> distance.dice([1, 0, 0], [1, 1, 0])
0.3333333333333333
>>> distance.dice([1, 0, 0], [2, 0, 0])
-0.3333333333333333