将字典的特定字典转换为Pandas数据框-Pandas

问题描述

我有如下所示的字典

d1:

{'teachers': 49,'students': 289,'R': 3.7,'holidays': 165,'Em': {'from': '2020-02-29T20:00:00.000Z','to': '2020-03-20T20:00:00.000Z','F': 3,'C': 2},'OS':18 
      'sC': {'from': '2020-03-31T20:00:00.000Z','to': '2020-05-29T20:00:00.000Z','F': 25,'C': 31}}

我想将上面的字典转换为数据框,如下面的熊猫所示。

teachers  students R   holidays  Em_from     Em_to       Exam_F  Exam_C  OS  sC_from         sC_to     sC_F   sC_C
49        289      3.7 165       2020-02-29  2020-03-20  3       2       18  2020-03-31  2020-05-29    25     31

解决方法

您可能正在寻找pandas.json_normalize

d = {'teachers': 49,'students': 289,'R': 3.7,'holidays': 165,'Em': {'from': '2020-02-29T20:00:00.000Z','to': '2020-03-20T20:00:00.000Z','F': 3,'C': 2},'OS':18,'sC': {'from': '2020-03-31T20:00:00.000Z','to': '2020-05-29T20:00:00.000Z','F': 25,'C': 31}}


print(pd.json_normalize(d,sep='_'))

打印:

   teachers  students    R  ...                     sC_to  sC_F sC_C
0        49       289  3.7  ...  2020-05-29T20:00:00.000Z    25   31

[1 rows x 13 columns]