dice_binary_distance#

skfp.distances.dice_binary_distance(vec_a: ndarray | csr_array, vec_b: ndarray | csr_array) float#

Dice distance for vectors of binary values.

Computes the Dice distance for binary data between two input arrays or sparse matrices by subtracting the Dice similarity [1] [2] [3] from 1, using to the formula:

\[dist(vec_a, vec_b) = 1 - sim(vec_a, vec_b)\]

The calculated distance falls within the range [0, 1]. Passing all-zero vectors to this function results in a distance of 0.

Parameters:
  • vec_a ({ndarray, sparse matrix}) – First binary input array or sparse matrix.

  • vec_b ({ndarray, sparse matrix}) – Second binary input array or sparse matrix.

Returns:

distance – Dice distance between vec_a and vec_b.

Return type:

float

References

Examples

>>> from skfp.distances import dice_binary_distance
>>> import numpy as np
>>> vec_a = np.array([1, 0, 1])
>>> vec_b = np.array([1, 0, 1])
>>> dist = dice_binary_distance(vec_a, vec_b)
>>> dist
0.0
>>> from skfp.distances import dice_binary_distance
>>> from scipy.sparse import csr_array
>>> vec_a = csr_array([[1, 0, 1]])
>>> vec_b = csr_array([[1, 0, 1]])
>>> dist = dice_binary_distance(vec_a, vec_b)
>>> dist
0.0