Я использую pandas json normalize, чтобы преобразовать json в pandas фрейм данных. Это json, с которым у меня возникают проблемы:
{
"P48PrecTer":{
"@xmlns":"http://sujetos.esios.ree.es/schemas/2010/05/31/P48PrecTer-esios-MP/",
"IdSesion":"16",
"SeriesTemporales":{
"IdentificacionSeriesTemporales":"STP0",
"TipoNegocio":"A10",
"UnidadPrecio":"EUR:MWH",
"Periodo":[
{
"IntervaloTiempo":"2020-07-12T00:00Z/2020-07-12T01:00Z",
"Resolucion":"PT60M",
"Intervalo":{
"Pos":"1",
"PrecioBaj":"25.20"
}
},
{
"IntervaloTiempo":"2020-07-12T03:00Z/2020-07-12T11:00Z",
"Resolucion":"PT60M",
"Intervalo":[
{
"Pos":"1",
"PrecioSub":"27.36"
},
{
"Pos":"2",
"PrecioBaj":"23.50"
},
{
"Pos":"8",
"PrecioBaj":"16.90"
}
]
},
{
"IntervaloTiempo":"2020-07-12T12:00Z/2020-07-12T16:00Z",
"Resolucion":"PT60M",
"Intervalo":[
{
"Pos":"1",
"PrecioSub":"29.90"
},
{
"Pos":"4",
"PrecioBaj":"15.75"
}
]
}
]
}
}
}
Я использую этот фрагмент кода:
prueba=pd.json_normalize(body,record_path=['P48PrecTer','SeriesTemporales','Periodo','Intervalo'], meta=[['P48PrecTer','IdSesion'], ['P48PrecTer','SeriesTemporales','Periodo','IntervaloTiempo']])
Я ожидаю чего-то со структурой csv. Однако я получаю следующее:
0|P48PrecTer.IdSesion|P48PrecTer.SeriesTemporales.Periodo.IntervaloTiempo
Pos|06|2020-07-12T22:00Z/2020-07-12T23:00Z
PrecioBaj|06|2020-07-12T22:00Z/2020-07-12T23:00Z
PrecioSub|06|2020-07-12T22:00Z/2020-07-12T23:00Z
{'Pos': '1', 'PrecioBaj': '4.41', 'PrecioSub': 'null'}|06|2020-07-13T00:00Z/2020-07-13T03:00Z
{'Pos': '2', 'PrecioBaj': '9.00', 'PrecioSub': 'null'}|06|2020-07-13T00:00Z/2020-07-13T03:00Z
{'Pos': '3', 'PrecioBaj': '10.10', 'PrecioSub': 'null'}|06|2020-07-13T00:00Z/2020-07-13T03:00Z
Я предполагаю, что проблема может быть в списке, связанном с ключом Periodo, поскольку я работал с другими json с аналогичной структурой и не есть проблемы. Есть ли способ добраться до цели, к которой я стремлюсь? Спасибо.