У меня есть диктат, который может быть «бесконечно» вложенным и содержать несколько панд DataFrame
(все DataFrame
имеют одинаковое количество строк).
Я хочу создатьновый dict для каждой строки в DataFrame
, при этом строка преобразуется в dict (ключи - это имена столбцов), а остальная часть словаря остается прежней.
Примечание: я несделать декартово произведение между рядами различных DataFrame
.
, что будет лучшим и наиболее питонским способом сделать это?
Пример:
theоригинал dict
:
d = {'a': 1,
'inner': {
'b': 'string',
'c': pd.DataFrame({'c_col1': range(1,3), 'c_col2': range(2,4)})
},
'd': pd.DataFrame({'d_col1': range(4,6), 'd_col2': range(7,9)})
}
желаемый результат:
lst_of_dicts = [
{'a': 1,
'inner': {
'b': 'string',
'c': {
'c_col1': 1, 'c_col2':2
}
},
'd': {
'd_col1': 4, 'd_col2': 7
}
},
{'a': 1,
'inner': {
'b': 'string',
'c': {
'c_col1': 2, 'c_col2': 3
}
},
'd': {
'd_col1': 5, 'd_col2': 8
}
}
]