Cross-matching catalogs with a common object ID

crossmatch(x, y[, skip_bounds_checking]) Finds where the elements of x appear in the array y, including repeats.
unsorting_indices(sorting_indices) Return the indexing array that inverts numpy.argsort.

Calculating quantities for objects grouped into a common halo

group_member_generator(data, grouping_key, …) Generator used to loop over grouped data and yield requested properties of members of a group.
compute_richness(unique_halo_ids, …) For every ID in unique_halo_ids, calculate the number of times the ID appears in halo_id_of_galaxies.

Generating Monte Carlo realizations

monte_carlo_from_cdf_lookup(x_table, y_table) Randomly draw a set of num_draws points from any arbitrary input distribution function.
build_cdf_lookup(y[, npts_lookup_table]) Compute a lookup table for the cumulative distribution function specified by the input set of y values.

Matching one distribution to another

distribution_matching_indices(…[, seed]) Calcuate a set of indices that will resample (with replacement) input_distribution so that it matches output_distribution.
resample_x_to_match_y(x, y, bins[, seed]) Return the indices that resample x (with replacement) so that the resampled distribution matches the histogram of y.
bijective_distribution_matching(x_in, x_desired) Replace the values in x_in with x_desired, preserving the rank-order of x_in

Probabilistic binning

fuzzy_digitize(x, centroids[, min_counts, seed]) Function assigns each element of the input array x to a centroid number.

Estimating two-dimensional PDFs

sliding_conditional_percentile(x, y, …[, …]) Estimate the cumulative distribution function Prob(< y | x).