将可能包含熊猫数据框的字典变成几个字典

时间:2018-09-26 08:51:47

标签: python pandas dictionary dataframe

我有一个dict,它可能是“无限”嵌套的,包含数个DataFrame大熊猫(所有DataFrame都有相同数量的行)。

我想为DataFrame中的每一行创建一个新的字典,将行转换为字典(键是列名),而字典的其余部分保持不变。 / p>

注意:我不是在不同DataFrame的行之间制作笛卡尔积。

什么是最好,最pythonic的方式?

示例:

原始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
          }
    }
]

0 个答案:

没有答案