Python 扁平化熊猫中的嵌套json
我收到了JSON格式的天气观测数据,我想将其展平 一个完整的记录Python 扁平化熊猫中的嵌套json,python,json,pandas,json-normalize,Python,Json,Pandas,Json Normalize,我收到了JSON格式的天气观测数据,我想将其展平 一个完整的记录 第一个位置,包含25个报告,Rep在'Period' {'SiteRep':{'DV':{'type':'Obs', 'Location':[{'i':'3002', “lat”:“60.749”, ‘lon’:‘-0.854’, 'name':'BALTASOUND', '期间':[{'Rep':{'$':'1380', ‘D’:‘SW’, ‘G’:‘34’, ‘H’:‘79.5’, ‘P’:‘1019’, ‘S’:‘25’
- 第一个位置,包含25个报告,
在Rep
'Period'
{'SiteRep':{'DV':{'type':'Obs',
'Location':[{'i':'3002',
“lat”:“60.749”,
‘lon’:‘-0.854’,
'name':'BALTASOUND',
'期间':[{'Rep':{'$':'1380',
‘D’:‘SW’,
‘G’:‘34’,
‘H’:‘79.5’,
‘P’:‘1019’,
‘S’:‘25’,
‘T’:‘7.9’,
“V”:“13000”,
‘W’:‘8’,
“Dp”:“4.6”,
'Pt':'F'},
'type':'Day',
“值”:“2019-12-31Z”},
{'Rep':[{'$':'0',
‘D’:‘SW’,
‘G’:‘32’,
‘H’:‘84.0’,
‘P’:‘1018’,
‘S’:‘21’,
‘T’:‘7.5’,
“V”:“13000”,
‘W’:‘8’,
“Dp”:“5.0”,
'Pt':'F'},
{'$': '60',
‘D’:‘SW’,
‘G’:‘34’,
‘H’:‘81.7’,
‘P’:‘1018’,
‘S’:‘22’,
‘T’:‘7.5’,
“V”:“12000”,
‘W’:‘8’,
“Dp”:“4.6”,
'Pt':'F'},
{'$': '120',
‘D’:‘SW’,
‘G’:‘36’,
‘H’:‘79.9’,
‘P’:‘1017’,
‘S’:‘24’,
‘T’:‘7.9’,
“V”:“11000”,
‘W’:‘8’,
“Dp”:“4.7”,
'Pt':'F'},
{'$': '180',
‘D’:‘SW’,
‘G’:‘40’,
‘H’:‘82.3’,
‘P’:‘1016’,
‘S’:‘23’,
‘T’:‘7.5’,
“V”:“13000”,
‘W’:‘8’,
“Dp”:“4.7”,
'Pt':'F'},
{'$': '240',
‘D’:‘SW’,
‘G’:‘33’,
‘H’:‘84.6’,
‘P’:‘1015’,
‘S’:‘18’,
‘T’:‘8.0’,
“V”:“12000”,
‘W’:‘8’,
“Dp”:“5.6”,
'Pt':'F'},
{'$': '300',
‘D’:‘SW’,
‘G’:‘33’,
‘H’:‘85.3’,
‘P’:‘1015’,
‘S’:‘24’,
‘T’:‘8.3’,
“V”:“11000”,
‘W’:‘8’,
“Dp”:“6.0”,
'Pt':'F'},
{'$': '360',
‘D’:‘WSW’,
‘G’:‘41’,
‘H’:‘89.0’,
‘P’:‘1014’,
‘S’:‘30’,
‘T’:‘8.5’,
"V":"8000",,
‘W’:‘8’,
“Dp”:“6.8”,
'Pt':'F'},
{'$': '420',
‘D’:‘SW’,
‘G’:‘43’,
‘H’:‘89.6’,
‘P’:‘1013’,
‘S’:‘28’,
‘T’:‘8.7’,
“V”:“7000”,
‘W’:‘7’,
“Dp”:“7.1”,
'Pt':'F'},
{'$': '480',
‘D’:‘SW’,
‘G’:‘39’,
‘H’:‘88.4’,
‘P’:‘1013’,
‘S’:‘23’,
‘T’:‘8.7’,
“V”:“15000”,
‘W’:‘7’,
“Dp”:“6.9”,
'Pt':'F'},
{'$': '540',
‘D’:‘SW’,
‘G’:‘40’,
‘H’:‘84.3’,
‘P’:‘1013’,
‘S’:‘29’,
‘T’:‘9.1’,
“V”:“19000”,
‘W’:‘8’,
“Dp”:“6.6”,
'Pt':'F'},
{'$': '600',
‘D’:‘SW’,
‘G’:‘41’,
‘H’:‘85.4’,
‘P’:‘1012’,
‘S’:‘24’,
‘T’:‘8.9’,
“V”:“12000”,
‘W’:‘8’,
“Dp”:“6.6”,
'Pt':'F'},
{'$': '660',
‘D’:‘SW’,
‘G’:‘38’,
‘H’:‘84.2’,
‘P’:‘1012’,
‘S’:‘28’,
‘T’:‘9.2’,
“V”:“13000”,
‘W’:‘8’,
“Dp”:“6.7”,
'Pt':'F'},
{'$': '720',
‘D’:‘SW’,
‘G’:‘47’,
‘H’:‘83.6’,
‘P’:‘1011’,
‘S’:‘32’,
‘T’:‘9.4’,
“V”:“12000”,
‘W’:‘8’,
“Dp”:“6.8”,
'Pt':'F'},
{'$': '780',
‘D’:‘WSW’,
‘G’:‘45’,
‘H’:‘84.8’,
‘P’:‘1011’,
‘S’:‘30’,
‘T’:‘9.4’,
“V”:“11000”,
‘W’:‘8’,
“Dp”:“7.0”,
'Pt':'F'},
{'$': '840',
‘D’:‘SW’,
‘G’:‘43’,
‘H’:‘86.0’,
‘P’:‘1010’,
‘S’:‘28’,
‘T’:‘9.4’,
“V”:“11000”,
‘W’:‘7’,
“Dp”:“7.2”,
'Pt':'F'},
{'$': '900',
‘D’:‘WSW’,
‘G’:‘40’,
‘H’:‘85.4’,
‘P’:‘1009’,
‘S’:‘29’,
‘T’:‘9.4’,
“V”:“12000”,
‘W’:‘8’,
“Dp”:“7.1”,
'Pt':'F'},
{'$': '960',
‘D’:‘SW’,
‘G’:‘39’,
‘H’:‘86.0’,
‘P’:‘1009’,
‘S’:‘25’,
‘T’:‘9.2’,
“V”:“11000”,
‘W’:‘8’,
“Dp”:“7.0”,
'Pt':'F'},
{'$': '1020',
‘D’:‘SW’,
‘G’:‘33’,
‘H’:‘87.8’,
‘P’:‘1009’,
‘S’:‘23’,
‘T’:‘8.9’,
“V”:“11000”,
‘W’:‘8’,
“Dp”:“7.0”,
'Pt':'F'},
{'$': '1080',
‘D’:‘SW’,
‘G’:‘36’,
‘H’:‘85.5’,
‘P’:‘1008’,
‘S’:‘23’,
‘T’:‘8.9’,
“V”:“11000”,
‘W’:‘8’,
“Dp”:“6.6”,
'Pt':'F'},
{'$': '1140',
‘D’:‘SW’,
‘G’:‘40’,
‘H’:‘86.6’,
‘P’:‘1007’,
‘S’:‘28’,
‘T’:‘8.8’,
“V”:“14000”,
‘W’:‘8’,
“Dp”:“6.7”,
'Pt':'F'},
{'$': '1200',
“D”:“SSW”,
‘G’:‘39’,
‘H’:‘84.8’,
‘P’:‘1006’,
‘S’:‘28’,
‘T’:‘8.8’,
“V”:“13000”,
‘W’:‘8’,
“Dp”:“6.4”,
'Pt':'F'},
{'$': '1260',
“D”:“SSW”,
‘G’:‘37’,
‘H’:‘87.7’,
‘P’:‘1005’,
‘S’:‘26’,
‘T’:‘8.0’,
“V”:“15000”,
‘W’:‘8’,
“Dp”:“6.1”,
'Pt':'F'},
{'$': '1320',
“D”:“S”,
‘G’:‘37’,
‘H’:‘88.4’,
‘P’:‘1003’,
‘S’:‘24’,
‘T’:‘8.0’,
“V”:“13000”,
‘W’:‘8’,
“Dp”:“6.2”,
'Pt':'F'},
{
SiteRep - DV - Location - Period (0) - Rep (0)
- Rep(1)
Period (1) - Rep (0)
- Rep(1)
| i | lat | lon | name |country | continent| elevation| name |Rep(0)$| Rep(0)D|Rep(0)G|..
|---|-----|------|-------|--------|----------|----------|------|-------|--------|-------|..
| | | | | | | | | | | |
normalised_data = pd.json_normalize(df['observations'], record_path=['SiteRep','DV','Location'])
i lat lon name country continent elevation type value Rep.$ Rep.D Rep.G Rep.H Rep.P Rep.S Rep.T Rep.V Rep.W Rep.Dp Rep.Pt
0 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2019-12-31Z 1380 SW 34 79.5 1019 25 7.9 13000 8 4.6 F
1 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 0 SW 32 84.0 1018 21 7.5 13000 8 5.0 F
2 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 60 SW 34 81.7 1018 22 7.5 12000 8 4.6 F
3 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 120 SW 36 79.9 1017 24 7.9 11000 8 4.7 F
4 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 180 SW 40 82.3 1016 23 7.5 13000 8 4.7 F
5 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 240 SW 33 84.6 1015 18 8.0 12000 8 5.6 F
6 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 300 SW 33 85.3 1015 24 8.3 11000 8 6.0 F
7 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 360 WSW 41 89.0 1014 30 8.5 8000 8 6.8 F
8 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 420 SW 43 89.6 1013 28 8.7 7000 7 7.1 F
9 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 480 SW 39 88.4 1013 23 8.7 15000 7 6.9 F
10 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 540 SW 40 84.3 1013 29 9.1 19000 8 6.6 F
11 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 600 SW 41 85.4 1012 24 8.9 12000 8 6.6 F
12 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 660 SW 38 84.2 1012 28 9.2 13000 8 6.7 F
13 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 720 SW 47 83.6 1011 32 9.4 12000 8 6.8 F
14 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 780 WSW 45 84.8 1011 30 9.4 11000 8 7.0 F
15 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 840 SW 43 86.0 1010 28 9.4 11000 7 7.2 F
16 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 900 WSW 40 85.4 1009 29 9.4 12000 8 7.1 F
17 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 960 SW 39 86.0 1009 25 9.2 11000 8 7.0 F
18 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 1020 SW 33 87.8 1009 23 8.9 11000 8 7.0 F
19 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 1080 SW 36 85.5 1008 23 8.9 11000 8 6.6 F
20 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 1140 SW 40 86.6 1007 28 8.8 14000 8 6.7 F
21 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 1200 SSW 39 84.8 1006 28 8.8 13000 8 6.4 F
22 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 1260 SSW 37 87.7 1005 26 8.0 15000 8 6.1 F
23 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 1320 S 37 88.4 1003 24 8.0 13000 8 6.2 F
24 3002 60.749 -0.854 BALTASOUND SCOTLAND EUROPE 15.0 Day 2020-01-01Z 1380 S 38 89.6 1002 29 7.6 11000 8 6.0 F
25 3005 60.139 -1.183 LERWICK (S. SCREEN) SCOTLAND EUROPE 82.0 Day 2019-12-31Z 1380 W 41 89.5 1020 28 7.2 15000 8 5.6 F