range_search(1) range search


range_search [-h] [-v] -d string -M double -n string -r string [-c] [-l int] [-m double] [-N] [-q string] [-s] -V


This program implements range search with a Euclidean distance metric. For a given query point, a given range, and a given set of reference points, the program will return all of the reference points with distance to the query point in the given range. This is performed for an entire set of query points. You may specify a separate set of reference and query points, or only a reference set -- which is then used as both the reference and query set. The given range is taken to be inclusive (that is, points with a distance exactly equal to the minimum and maximum of the range are included in the results).

For example, the following will calculate the points within the range [2, 5] of each point in 'input.csv' and store the distances in 'distances.csv' and the neighbors in 'neighbors.csv':

$ range_search --min=2 --max=5 --reference_file=input.csv --distances_file=distances.csv --neighbors_file=neighbors.csv

The output files are organized such that line i corresponds to the points found for query point i. Because sometimes 0 points may be found in the given range, lines of the output files may be empty. The points are not ordered in any specific manner.

Because the number of points returned for each query point may differ, the resultant CSV-like files may not be loadable by many programs. However, at this time a better way to store this non-square result is not known. As a result, any output files will be written as CSVs in this manner, regardless of the given extension.


--distances_file (-d) [string]
File to output distances into.
--max (-M) [double]
Upper bound in range.
--neighbors_file (-n) [string]
File to output neighbors into.
--reference_file (-r) [string]
File containing the reference dataset.


--cover_tree (-c)
If true, use a cover tree for range searching (instead of a kd-tree).
--help (-h)
Default help info.
--info [string]
Get help on a specific module or option. Default value ''.
--leaf_size (-l) [int]
Leaf size for tree building. Default value 20.
--min (-m) [double]
Lower bound in range. Default value 0.
--naive (-N)
If true, O(n^2) naive mode is used for computation.
--query_file (-q) [string]
File containing query points (optional). Default value ''.
--single_mode (-s)
If true, single-tree search is used (as opposed to dual-tree search).
--verbose (-v)
Display informational messages and the full list of parameters and timers at the end of execution.
--version (-V)
Display the version of mlpack.


For further information, including relevant papers, citations, and theory, consult the documentation found at http://www.mlpack.org or included with your distribution of MLPACK.