#python #json #pandas
Вопрос:
Я новичок в json и pandas и хочу вывести свои данные в следующей схеме, но я не уверен, как добавить ведущие «результаты».
Мой фрейм данных:
Name Id Qty Value
thing1 123 10 12.5
thing2 456 20 15.4
thing3 789 40 84.2
Мой код:
json_output = df.reset_index().to_json(orient='record')
Мой вывод Json:
[{"id":456,
"name":"thing2",
"qty":20,
"value":15.4
},
"id":123,
"name":"thing1",
"qty":10,
"value":12.4
},
"id":789,
"name":"thing3",
"qty":40
"value":84.2
}
]
Моя схема Json, которую я хочу:
results:
id:
name:
qty:
value:
Комментарии:
1. итак
id:
name:
, и т. Д. Карта в списке значений?2. да , поэтому в начале моего списка сразу после [я хочу «результаты»:, затем идентификатор: имя: и т. Д. Между фигурными скобками. как я уже сделал. Я просто хочу, чтобы слово «результаты» было в верхней части всего
Ответ №1:
Попробуй это:
import pandas as pd
import json
tmp = [('thing1', 123, 10, 12.5),
('thing2', 456, 20, 15.4),
('thing3', 789, 40, 84.2),
]
df = pd.DataFrame(tmp, columns=['Name', 'Id','Qty', 'Value'], )
df_dict = df.to_dict(orient='records')
final_dict = {'results': df_dict}
json_output = json.dumps(final_dict)