toolbox - Toolbox of various functions and generic utilities¶
Toolbox of various functions and generic utilities.
Authors: Steve Morley, Jon Niehof, Brian Larsen, Josef Koller, Dan Welling Institution: Los Alamos National Laboratory Contact: smorley@lanl.gov, jniehof@lanl.gov, balarsen@lanl.gov, jkoller@lanl.gov, dwelling@lanl.gov Los Alamos National Laboratory
Copyright 2010 Los Alamos National Security, LLC.
- Array binning
- Array creation
- Array searching and masking
- Other functions
- Multithreading and multiprocessing
- System tools
Array binning¶
arraybin (array, bins) |
Split a sequence into subsequences based on value. |
bin_center_to_edges (centers) |
Convert a list of bin centers to their edges |
bin_edges_to_center (edges) |
Convert a list of bin edges to their centers |
binHisto (data[, verbose]) |
Calculates bin width and number of bins for histogram using Freedman-Diaconis rule, if rule fails, defaults to square-root method |
Array creation¶
dist_to_list (func, length[, min, max]) |
Convert a probability distribution function to a list of values |
geomspace (start[, ratio, stop, num]) |
Returns geometrically spaced numbers. |
linspace (min, max, num, **kwargs) |
Returns linear-spaced bins. |
logspace (min, max, num, **kwargs) |
Returns log-spaced bins. |
Array searching and masking¶
interweave (a, b) |
given two array-like variables interweave them together. |
isview (array1[, array2]) |
Returns if an object is a view of another object. |
tCommon (ts1, ts2[, mask_only]) |
Finds the elements in a list of datetime objects present in another |
tOverlap (ts1, ts2, *args, **kwargs) |
Finds the overlapping elements in two lists of datetime objects |
tOverlapHalf (ts1, ts2[, presort]) |
Find overlapping elements in two lists of datetime objects |
Other functions¶
assemble (fln_pattern, outfln[, sortkey, verbose]) |
assembles all pickled files matching fln_pattern into single file and |
dictree (in_dict[, verbose, spaces, levels, …]) |
pretty print a dictionary tree |
eventTimer (Event, Time1) |
Times an event then prints out the time and the name of the event, |
feq (x, y[, precision]) |
compare two floating point values if they are equal |
getNamedPath (name) |
Return the full path of a parent directory with name as the leaf |
human_sort (l) |
Sort the given list in the way that humans expect. |
hypot (*args) |
compute the N-dimensional hypot of an iterable or many arguments |
interpol (newx, x, y[, wrap]) |
1-D linear interpolation with interpolation of hours/longitude |
intsolve (func, value[, start, stop, maxit]) |
Find the function input such that definite integral is desired value. |
medAbsDev (series[, scale]) |
Calculate median absolute deviation of a given input series |
mlt2rad (mlt[, midnight]) |
Convert mlt values to radians for polar plotting |
normalize (vec[, low, high]) |
Given an input vector normalize the vector to a given range |
pmm (a, *b) |
print min and max of input arrays |
rad2mlt (rad[, midnight]) |
Convert radians values to mlt |
windowMean (data[, time, winsize, overlap, …]) |
Windowing mean function, window overlap is user defined |
Multithreading and multiprocessing¶
thread_job (job_size, thread_count, target, …) |
Split a job into subjobs and run a thread for each |
thread_map (target, iterable[, thread_count]) |
Apply a function to every element of a list, in separate threads |
System tools¶
do_with_timeout (timeout, target, *args, **kwargs) |
Execute a function (or method) with a timeout. |
loadpickle (fln) |
load a pickle and return content as dictionary |
progressbar (count, blocksize, totalsize[, text]) |
print a progress bar with urllib.urlretrieve reporthook functionality |
query_yes_no (question[, default]) |
Ask a yes/no question via raw_input() and return their answer. |
savepickle (fln, dict[, compress]) |
save dictionary variable dict to a pickle with filename fln |
timeout_check_call (timeout, *args, **kwargs) |
Call a subprocess with a timeout. |
TimeoutError |
Raised when a time-limited process times out |
update ([all, QDomni, omni, omni2, leapsecs, …]) |
Download and update local database for omni, leapsecs etc |