scipy.spatial.distance.

sokalmichener#

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

計算兩個布林一維陣列之間的 Sokal-Michener 相異度。

自 1.15.0 版本起已棄用: 此函數已棄用,並將在 SciPy 1.17.0 中移除。請將 sokalmichener(u, v) 的用法替換為 rogerstanimoto(u, v)

布林一維陣列 uv 之間的 Sokal-Michener 相異度定義為

\[\frac{R} {S + R}\]

其中 \(c_{ij}\)\(\mathtt{u[k]} = i\)\(\mathtt{v[k]} = j\)\(k < n\) 時出現的次數,\(R = 2 * (c_{TF} + c_{FT})\)\(S = c_{FF} + c_{TT}\)

參數:
u(N,) 類似陣列, 布林

輸入陣列。

v(N,) 類似陣列, 布林

輸入陣列。

w(N,) 類似陣列, 可選

uv 中每個值的權重。預設值為 None,表示每個值的權重為 1.0。

回傳值:
sokalmichenerdouble

向量 uv 之間的 Sokal-Michener 相異度。

範例

>>> from scipy.spatial import distance
>>> distance.sokalmichener([1, 0, 0], [0, 1, 0])
0.8
>>> distance.sokalmichener([1, 0, 0], [1, 1, 0])
0.5
>>> distance.sokalmichener([1, 0, 0], [2, 0, 0])
-1.0