scipy.spatial.distance.

sokalsneath#

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

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

uv 之間的 Sokal-Sneath 相異度,

\[\frac{R} {c_{TT} + R}\]

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

參數:
u(N,) 類陣列 (array_like), 布林值 (bool)

輸入陣列。

v(N,) 類陣列 (array_like), 布林值 (bool)

輸入陣列。

w(N,) 類陣列 (array_like), 選用 (optional)

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

回傳值:
sokalsneath雙精度浮點數 (double)

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

範例

>>> from scipy.spatial import distance
>>> distance.sokalsneath([1, 0, 0], [0, 1, 0])
1.0
>>> distance.sokalsneath([1, 0, 0], [1, 1, 0])
0.66666666666666663
>>> distance.sokalsneath([1, 0, 0], [2, 1, 0])
0.0
>>> distance.sokalsneath([1, 0, 0], [3, 1, 0])
-2.0