Я начинающий программист, и я пытаюсь преобразовать файл Excel во вложенный JSON с помощью Pandas.
Я публикую свой код и ожидаемый вывод, которого я пока не могу достичь,Проблема в том, что столбцы Excel, которые я преобразую во вложенную информацию, на самом деле должны находиться под именем «адреса», и я не могу понять, как это сделать. Буду благодарен за любые советы.
Вот так выглядит файл excel:
import pandas as pd
import json
df = pd.read_excel("...", encoding = "utf-8-sig")
df.fillna('', inplace = True)
def get_nested_entry(key, grp):
entry = {}
entry['Forename'] = key[0]
entry['Middle Name'] = key[1]
entry['Surname'] = key[2]
for field in ['Address - Country']:
entry[field] = list(grp[field].unique())
return entry
entries = []
for key, grp in df.groupby(['Forename', 'Middle Name', 'Surname']):
entry = get_nested_entry(key, grp)
entries.append(entry)
print(entries)
with open("excel_to_json_output.json", "w", encoding = "utf-8-sig") as f:
json.dump(entries, f, indent = 4)
Это ожидаемоерезультат
[
{
"firstName": "Angela",
"lastName": "L.",
"middleName": "Johnson",
"addresses": [
{
"postcode": "32807",
"city": "Orlando",
"state": "FL",
"country": "United States of America"
}
],
Что я получаю, это
[
{
"Forename": "Angela",
"Middle Name": "L.",
"Surname": "Johnson",
"Address - Country": [
"United States of America"
]
},