bulk_russell_binary_distance#

skfp.distances.bulk_russell_binary_distance(X: ndarray, Y: ndarray | None = None) ndarray#

Bulk Russell distance for vectors of binary values.

Computes the pairwise Russell distance between binary matrices. If one array is passed, distances are computed between its rows. For two arrays, distances are between their respective rows, with i-th row and j-th column in output corresponding to i-th row from first array and j-th row from second array.

See also russell_binary_distance().

Parameters:
  • X (ndarray) – First binary input array, of shape \(m \times m\)

  • Y (ndarray, default=None) – Second binary input array, of shape \(n \times n\). If not passed, distances are computed between rows of X.

Returns:

distances – Array with pairwise Russell distance values. Shape is \(m \times n\) if two arrays are passed, or \(m \times m\) otherwise.

Return type:

ndarray

See also

russell_binary_distance()

Russell distance function for two vectors

Examples

>>> from skfp.distances import bulk_russell_binary_distance
>>> import numpy as np
>>> X = np.array([[1, 1, 1], [1, 0, 1]])
>>> Y = np.array([[1, 0, 1], [1, 1, 0]])
>>> dist = bulk_russell_binary_distance(X, Y)
>>> dist
array([[0.33333333, 0.33333333],
       [0.33333333, 0.66666667]])
>>> X = np.array([[1, 1, 1], [1, 0, 0]])
>>> dist = bulk_russell_binary_distance(X)
>>> dist
array([[0.        , 0.66666667],
       [0.66666667, 0.66666667]])