У меня есть набор данных ниже,
data:[{'name': 'cable', 'status': 'none'}, {'name': 'laptop', 'status': 'loaded', 'mode': 'high'}
{'name': 'samsung', 'status': 'none'}], location:[{'place': 'chennai', 'distance': '100km'},
{'place': 'bangalore', 'distance': '200km'}]
Я пытаюсь извлечь значения и преобразовать их в CSV. Я сталкиваюсь с проблемами при преобразовании его многомерного массива. Было бы полезно любое предложение.
Если мои данные всего {'name': 'cable', 'status': 'none'}, {'name': 'laptop', 'status': 'loaded', 'mode': 'high'}
, я могу получить их через awk, используя ниже:
awk -F " = " -v OFS="," '
BEGIN { print "name","status","mode","place","distance" }
function printline() {
print data["name"], data["status"], data["mode"]
}
{data[$1] = $2}
NF == 0 {printline(); delete data}
END {printline()}
'
Но я не могу получить их с моими исходными данными set,
Исходные данные,
data:[{'name': 'cable', 'status': 'none'}, {'name': 'laptop', 'status': 'loaded', 'mode': 'high'}
{'name': 'samsung', 'status': 'none'}], location:[{'place': 'chennai', 'distance': '100km'},
{'place': 'bangalore', 'distance': '200km'}]
Ожидаемый результат,
name status mode place distance
cable none null chennai 100km
laptop loaded high bangalore 200km
samsung none null null null