dice_count_similarity#
- skfp.distances.dice_count_similarity(vec_a: ndarray | csr_array, vec_b: ndarray | csr_array) float #
Dice similarity for vectors of count values.
Computes the Dice similarity [1] [2] [3] for count data between two input arrays or sparse matrices using the formula:
\[sim(vec_a, vec_b) = \frac{2 \cdot vec_a \cdot vec_b}{\|vec_a\|^2 + \|vec_b\|^2}\]The calculated similarity falls within the range
[0, 1]
. Passing all-zero vectors to this function results in a similarity of 1.- Parameters:
vec_a ({ndarray, sparse matrix}) – First count input array or sparse matrix.
vec_b ({ndarray, sparse matrix}) – Second count input array or sparse matrix.
- Returns:
similarity – Dice similarity between
vec_a
andvec_b
.- Return type:
float
References
Examples
>>> from skfp.distances import dice_count_similarity >>> import numpy as np >>> vec_a = np.array([7, 1, 1]) >>> vec_b = np.array([7, 1, 2]) >>> sim = dice_count_similarity(vec_a, vec_b) >>> sim 0.9904761904761905
>>> from skfp.distances import dice_count_similarity >>> from scipy.sparse import csr_array >>> vec_a = csr_array([[7, 1, 1]]) >>> vec_b = csr_array([[7, 1, 2]]) >>> sim = dice_count_similarity(vec_a, vec_b) >>> sim 0.9904761904761905