pandas.io.json.json_normalize¶
-
pandas.io.json.
json_normalize
(data, record_path=None, meta=None, meta_prefix=None, record_prefix=None)[source]¶ 将规范化的半结构化JSON数据转换为平面表格
参数: data:dict或list的列表
非序列化JSON对象
record_path:字符串或字符串列表,默认为无
每个对象中的路径到记录列表。如果未传递,则将假定数据是记录数组
meta:路径列表(字符串或字符串列表),默认为无
用作结果表中每个记录的元数据的字段
record_prefix:string,default无
如果为True,前缀记录带有虚线(?)路径。 foo.bar.field如果记录的路径是['foo','bar']
meta_prefix:string,default无
返回: 帧:DataFrame
例子
>>> data = [{'state': 'Florida', ... 'shortname': 'FL', ... 'info': { ... 'governor': 'Rick Scott' ... }, ... 'counties': [{'name': 'Dade', 'population': 12345}, ... {'name': 'Broward', 'population': 40000}, ... {'name': 'Palm Beach', 'population': 60000}]}, ... {'state': 'Ohio', ... 'shortname': 'OH', ... 'info': { ... 'governor': 'John Kasich' ... }, ... 'counties': [{'name': 'Summit', 'population': 1234}, ... {'name': 'Cuyahoga', 'population': 1337}]}] >>> from pandas.io.json import json_normalize >>> result = json_normalize(data, 'counties', ['state', 'shortname', ... ['info', 'governor']]) >>> result name population info.governor state shortname 0 Dade 12345 Rick Scott Florida FL 1 Broward 40000 Rick Scott Florida FL 2 Palm Beach 60000 Rick Scott Florida FL 3 Summit 1234 John Kasich Ohio OH 4 Cuyahoga 1337 John Kasich Ohio OH