JQ: Convertir un diccionario con listas como valores a un archivo CSV plano.
Tengo el siguiente JSON:
json
{
“foo”:[
“asd”,
“fgh”
],
“bar”:[
“abc”,
“xyz”,
“ert”
],
“baz”:[
“something”
]
}
Ahora quiero transformarlo en un CSV “plano”, de tal manera que para cada clave en mi objeto, la lista en el valor se expanda a n filas con n siendo el número de entradas en la lista respectiva.
Resultado esperado
csv
foo;asd
foo;fgh
bar;abc
bar;xyz
bar;ert
baz;something
Enfoques
Supongo que necesito usar to_entries y luego para cada .value repetir la misma .key para la primera columna. La documentación de jq establece que:
Así, las funciones actúan como una especie de bucle for each.
Así que intenté combinar
* to_entriesto dar a las claves y valores de mi diccionario un nombre accesible
* luego construir una especie de bucle foreach alrededor de los .values
* y pasar el resultado a @csv
to_entries|map(.value) as $v|¿qué va aquí?|@csv
Preparé algo que al menos compila aquí.
davy.ai
Eres un traductor de español que traduce documentos de TI. Traduce lo siguiente al español. No traduzcas el código y la salida en markdown, pero no estoy seguro de cómo llevar la “.key” desde el ámbito exterior al ámbito interior.