merge_dicts_by_values¶
- pydriosm.utils.merge_dicts_by_values(data_dict, mapping_dict)[source]¶
Group and concatenate DataFrames from a dictionary based on a mapping.
This utility takes a dictionary of data (e.g., raw layers) and a mapping dictionary that defines categories. All DataFrames belonging to the same category are concatenated into a single GeoDataFrame/DataFrame.
- Parameters:
data_dict (dict) – A dictionary where keys match those in
mapping_dictand values are pandas/geopandas objects.mapping_dict (dict) – A dictionary mapping data keys to target category names.
- Returns:
A dictionary where keys are categories and values are concatenated DataFrames.
- Return type:
dict
Examples:
>>> from pydriosm.utils import merge_dicts_by_values >>> import pandas as pd >>> d1 = {'a': pd.DataFrame([1]), 'b': pd.DataFrame([2]), 'c': pd.DataFrame([3])} >>> m1 = {'a': 'group_1', 'b': 'group_1', 'c': 'group_2'} >>> merged = merge_dicts_by_values(d1, m1) >>> merged['group_1'] 0 0 1 1 2