bundles / scipy latest / scipy / spatial / _ckdtree / cKDTree / sparse_distance_matrix
cython_function_or_method
scipy.spatial._ckdtree:cKDTree.sparse_distance_matrix
Signature
def sparse_distance_matrix ( self , other , max_distance , p = 2.0 ) Summary
Compute a sparse distance matrix
Extended Summary
Computes a distance matrix between two cKDTrees, leaving as zero any distance greater than max_distance.
Parameters
other: cKDTreemax_distance: positive floatp: float, 1<=p<=infinityWhich Minkowski p-norm to use. A finite large p may cause a ValueError if overflow can occur.
output_type: string, optionalWhich container to use for output data. Options: 'dok_matrix', 'coo_matrix', 'dict', or 'ndarray'. Default: 'dok_matrix'.
Returns
result: dok_matrix, coo_matrix, dict or ndarraySparse matrix representing the results in "dictionary of keys" format. If a dict is returned the keys are (i,j) tuples of indices. If output_type is 'ndarray' a record array with fields 'i', 'j', and 'v' is returned,
Examples
You can compute a sparse distance matrix between two kd-trees:import numpy as np from scipy.spatial import cKDTree rng = np.random.default_rng() points1 = rng.random((5, 2)) points2 = rng.random((5, 2)) kd_tree1 = cKDTree(points1) kd_tree2 = cKDTree(points2) sdm = kd_tree1.sparse_distance_matrix(kd_tree2, 0.3)✓
sdm.toarray()
✗from scipy.spatial import distance_matrix
✓distance_matrix(points1, points2)
✗Aliases
-
scipy.spatial.cKDTree.sparse_distance_matrix