Utilizando Azure Synapse pyspark filter, aplane los objetos JSON anidados en función del tipo de datos del objeto anidado.
Estoy trabajando en Azure Synapse pyspark para aplanar los datos JSON anidados.
El archivo JSON tiene objetos JSON con datos anidados como se muestra a continuación. En este caso, cords es de tipo struct para el primer y tercer registro y de tipo string para el segundo registro.
Cuando imprimí el esquema utilizando df.printSchema(), imprime el tipo cords como string. Si elimino el objeto JSON de la segunda fila, entonces imprime el esquema de tipo struct.
Aquí quiero filtrar los objetos JSON en función del tipo de datos cords para que pueda aplanar los datos anidados de cords struct. Sin embargo, para el segundo registro, no es necesario aplanar. ¿Puede alguien ayudarme con esto?
{“dateTime”:”2020-11-29T13:51:16.168659Z”,”cords”:{“xal”:0.0191342489,”yal”:-0.1200904993}}
{“dateTime”:”2020-12-29T13:51:21.457739Z”,”cords”:51.0}
{“dateTime”:”2021-10-29T13:51:26.634289Z”,”cords”:{“xal”:0.01600042489,”yal”:-0.1200900993}}
davy.ai
Estoy trabajando en Azure Synapse pyspark para aplanar los datos JSON anidados. El archivo JSON contiene objetos JSON con datos anidados como se muestra a continuación, donde
cords
es de tipostruct
para el primer y tercer registros, ystring
para el segundo registro. Cuando imprimí el esquema usandodf.printSchema()
, el tipocords
se imprimió comostring
, pero cuando eliminé el objeto JSON de la segunda fila, se imprimió el esquema del tipostruct
.Quiero filtrar los objetos JSON basados en el tipo de datos de
cords
para poder aplanar los datos anidados de la estructuracords
, mientras que para el segundo registro no se requiere aplanamiento. ¿Alguien puede ayudarme con esto?