class skbio.core.distance.DistanceMatrix(data, ids=None)[source]

Store distances between objects.

A DistanceMatrix is a DissimilarityMatrix with the additional requirement that the matrix data is symmetric. There are additional methods made available that take advantage of this symmetry.


The distances are stored in redundant (square-form) format [R52]. To facilitate use with other scientific Python routines (e.g., scipy), the distances can be retrieved in condensed (vector-form) format using condensed_form.

DistanceMatrix only requires that the distances it stores are symmetric. Checks are not performed to ensure the other three metric properties hold (non-negativity, identity of indiscernibles, and triangle inequality) [R53]. Thus, a DistanceMatrix instance can store distances that are not metric.


[R52](1, 2)
[R53](1, 2)


T Transpose of the dissimilarity matrix.
data Array of dissimilarities.
dtype Data type of the dissimilarities.
ids Tuple of object IDs.
shape Two-element tuple containing the dissimilarity matrix dimensions.
size Total number of elements in the dissimilarity matrix.


__contains__(lookup_id) Check if the specified ID is in the dissimilarity matrix.
__eq__(other) Compare this dissimilarity matrix to another for equality.
__getitem__(index) Slice into dissimilarity data by object ID or numpy indexing.
__ne__(other) Determine whether two dissimilarity matrices are not equal.
__str__() Return a string representation of the dissimilarity matrix.
condensed_form() Return an array of distances in condensed format.
copy() Return a deep copy of the dissimilarity matrix.
filter(ids) Filter the dissimilarity matrix by IDs.
from_file(dm_f[, delimiter]) Load dissimilarity matrix from a delimited text file or file path.
index(lookup_id) Return the index of the specified ID.
permute([condensed]) Randomly permute both rows and columns in the matrix.
redundant_form() Return an array of dissimilarities in redundant format.
to_file(out_f[, delimiter]) Save the dissimilarity matrix to file in delimited text format.
transpose() Return the transpose of the dissimilarity matrix.