explode_json_to_cols
Converts JSON array columns into separate columns, with one column per array value.Usage
Parameters
- df(pd.DataFrame): Input DataFrame
- column_name(str): Column containing JSON arrays
- drop(bool): Whether to drop original column
- inplace(bool): Modify DataFrame in place
- parser(function): Custom parsing function (optional)
Returns
DataFrame with array values expanded into separate columnsexplode_json_to_rows
Takes a column containing an array of objects and expands it into multiple rows, creating columns for each object property.Usage
Parameters
- df(pd.DataFrame): Input DataFrame
- column_name(str): Column containing JSON arrays
- drop(bool): Whether to drop original column
- max_level(int): Maximum nesting level for flattening
- parser(function): Custom parsing function (optional)
Returns
DataFrame with array objects expanded into separate rowsjson_tuple_to_cols
Convert JSON tuple columns into separate columns based on key-value pairs. Useful for transforming nested JSON data into a flattened DataFrame structure.Installation
Basic Usage
Parameters
- df(pd.DataFrame): Input DataFrame
- column_name(str): Column containing JSON tuples
- col_config(dict): Configuration for key-value mapping- cols: Output column names
- look_up: Input property names
 
Returns
DataFrame with JSON tuple column split into separate columnscompress_rows_to_col
Compresses previously exploded rows back into a single column containing array data.Usage
Parameters
- df(pd.DataFrame): Input DataFrame
- column_prefix(str): Prefix of columns to compress
- pk(str): Primary key for grouping rows
- use_csv(bool): Use CSV format for storage
Returns
DataFrame with specified columns compressed into array formatarray_to_dict_reducer
Creates a reducer function that converts arrays into dictionaries using specified key-value properties.Usage
Parameters
- key_prop(str): Property to use as dictionary key
- value_prop(str): Property to use as dictionary value
Returns
Function that reduces arrays to dictionariesNotes
- Returns a reducer function to be used with functools.reduce
- Raises AttributeError if values aren’t dictionaries
- Handles both specified key-value pairs and full dictionary merging
clean_obj_null_values
Replaces null values with None in stringified objects for further processing.Usage
Parameters
- obj(str): Stringified dictionary/list with null values
Returns
String with ‘null’ values replaced with ‘None’Notes
- Returns empty dict () for pandas NA values
- Particularly useful before using explode functions
- Preserves original object structure for non-null values