bulk_rogot_goldberg_binary_distance#

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

Bulk Rogot-Goldberg distance for vectors of binary values.

Computes the pairwise Rogot-Goldberg 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 rogot_goldberg_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 Rogot-Goldberg distance values. Shape is \(m \times n\) if two arrays are passed, or \(m \times m\) otherwise.

Return type:

ndarray

See also

rogot_goldberg_binary_distance()

Rogot-Goldberg distance function for two vectors

Examples

>>> from skfp.distances import bulk_rogot_goldberg_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_rogot_goldberg_binary_distance(X, Y)
>>> dist
array([[0.6 , 0.6 ],
       [0.  , 0.75]])
>>> X = np.array([[1, 1, 1], [1, 0, 0]])
>>> dist = bulk_rogot_goldberg_binary_distance(X)
>>> dist
array([[0.  , 0.75],
       [0.75, 0.  ]])