Forum Discussion
Parsing Complex Json
- 5 years ago
Anonymous - unfortunately with JSON the data may not be in an ideal nested format that represents a table when extracted. You will have to expand each list to discern what is in it. You can pull those into separate columns. For example, you might have a column that looks like this:
Those are 5 integers. From there, I can convert those to text with List.Transform, then use Text.Combine. So the full M code for a new column to do this is:
#"Added Custom" = Table.AddColumn( Source, "Combined", each try Text.Combine( List.Transform( [Column1], Text.From ), ", " ) otherwise [Column1] )That will return this:
So you may have to use a combination of if/then/else or try/otherwise (the latter is like IFERROR in Excel) with a number of Text and List functions to tease out the data as you need, but we'd have to know what each list contains, and with JSON, each list could be unique.
Thanks amitchandak for the help,
I managed to filter only the JSON records and parsed
then i am getting a mix of values and list as shown below
Here can i only expand the rows containg list and rest keep as it is?