Summary of Functions

JSON Parsing

jkeys get keys for initial json level, or at level after following key_path
to_dict input json to dict

JSON/Dict Manipulation

LazyLoad lazy load a dict_like object or file structure as a pseudo dictionary (works with all edict functions) supplies tab completion of keys
to_html Pretty display dictionary in collapsible format with indents
apply apply a function to all values with a certain leaf (terminal) key
combine_apply combine values with certain leaf (terminal) keys by a function
combine_lists combine lists of dicts
convert_type convert all values of one type to another
diff return the difference between two dict_like objects
dump output dict to json
extract extract section of dictionary
filter_keyfuncs filters leaf nodes key:func(val) pairs of nested dictionary, where func(val) -> True/False
filter_keys filter dict by certain keys
filter_keyvals filters leaf nodes key:value pairs of nested dictionary
filter_paths filter dict by certain paths containing key sets
filter_values filters leaf nodes of nested dictionary
flatten get nested dict as flat {key:val,…}, where key is tuple/string of all nested keys
flatten2d get nested dict as {key:dict,…}, where key is tuple/string of all-1 nested keys
flattennd get nested dict as {key:dict,…}, where key is tuple/string of all-n levels of nested keys
indexes index dictionary by multiple keys
is_dict_like test if object is dict like
is_iter_non_string test if object is a list or tuple
is_list_of_dict_like test if object is a list only containing dict like items
is_path_like test if object is pathlib.Path like
list_to_dict convert a list of dicts to a dict with root keys
merge merge dicts, starting with dicts[1] into dicts[0]
pprint print a nested dict in readable format
remove_keys remove certain keys from nested dict, retaining preceeding paths
remove_keyvals remove paths with at least one branch leading to certain (key,value) pairs from dict
remove_paths remove paths containing certain keys from dict
rename_keys rename keys in dict
split_key split an existing key(s) into multiple levels
split_lists split_lists key:list pairs into dicts for each item in the lists NB: will only split if all split_keys are present
to_json output dict to json
unflatten unflatten dictionary with keys as tuples or delimited strings

Physical Units

apply_unitschema apply the unit schema to the data
combine_quantities combine <unit,magnitude> pairs into pint.Quantity objects
get_in_units get a value in the required units
split_quantities split pint.Quantity objects into <unit,magnitude> pairs