将字典展平为数据框
Flatten dictionary to dataframe
请勿将此标记为重复。
这是我的字典,test_dict
:
{"Report" : {
"ReportHeader": {
"ReportNum": None,
"Type": {
"source": "user",
"text": "Training"
},
"Reg": "WWWWWW"
}
}
}
我想展平为预期输出为的数据框:
Report.ReportHeader.ReportNum Report.ReportHeader.Type.source Report.ReportHeader.Type.text Report.ReportHeader.Reg
None User Training WWWWWWW
到目前为止我做了什么:
data_df = pd.DataFrame.from_dict(test_dict)
在 Dataframe 中生成:
Report
ReportHeader {'ReportNum': None, 'Type': {'source': ...
我也试试explode
:
data_df = pd.DataFrame(test_dict).explode('Report').reset_index(drop=True)
但是我没有得到想要的输出。取而代之的是 KeyError:0
.
d = {"Report" : {
"ReportHeader": {
"ReportNum": None,
"Type": {
"source": "user",
"text": "Training"
},
"Reg": "WWWWWW"
}
}
}
df = pd.json_normalize(d)
print(df)
打印:
Report.ReportHeader.ReportNum Report.ReportHeader.Type.source Report.ReportHeader.Type.text Report.ReportHeader.Reg
0 None user Training WWWWWW
请勿将此标记为重复。
这是我的字典,test_dict
:
{"Report" : {
"ReportHeader": {
"ReportNum": None,
"Type": {
"source": "user",
"text": "Training"
},
"Reg": "WWWWWW"
}
}
}
我想展平为预期输出为的数据框:
Report.ReportHeader.ReportNum Report.ReportHeader.Type.source Report.ReportHeader.Type.text Report.ReportHeader.Reg
None User Training WWWWWWW
到目前为止我做了什么:
data_df = pd.DataFrame.from_dict(test_dict)
在 Dataframe 中生成:
Report
ReportHeader {'ReportNum': None, 'Type': {'source': ...
我也试试explode
:
data_df = pd.DataFrame(test_dict).explode('Report').reset_index(drop=True)
但是我没有得到想要的输出。取而代之的是 KeyError:0
.
d = {"Report" : {
"ReportHeader": {
"ReportNum": None,
"Type": {
"source": "user",
"text": "Training"
},
"Reg": "WWWWWW"
}
}
}
df = pd.json_normalize(d)
print(df)
打印:
Report.ReportHeader.ReportNum Report.ReportHeader.Type.source Report.ReportHeader.Type.text Report.ReportHeader.Reg
0 None user Training WWWWWW