Ключ Record_path нормализации json не найденPython

Программы на Python
Ответить
Anonymous
 Ключ Record_path нормализации json не найден

Сообщение Anonymous »

Этот пост был отредактирован, чтобы получить реальный файл JSON (большой) вместо фрагмента примера, который я извлек (который работает в этом посте).
Мне было интересно, почему я получаю ключевую ошибку при использовании Record_path в этом наборе данных.
под ключом результатов есть 2 вложенных ключа с именами «active_ingredients» и «packaging».
когда я нормализую, я получаю

Код: Выделить всё

result = pd.json_normalize(data['results'], record_path=["packaging"],meta=['product_ndc'])
ожидаемые столбцы

Код: Выделить всё

package_ndc description marketing_start_date    sample  marketing_end_date  product_ndcs
но когда я добавляю active_ingredients в список Record_path, я получаю ключевую ошибку. То же самое касается и мета. Когда я добавляю в мета-список другие столбцы, такие как «brand_name» и «generic_name», я получаю ключевую ошибку. чтобы увидеть ключи
это не работает

Код: Выделить всё

result = pd.json_normalize(data['results'], record_path=["packaging","active_ingredients"],meta=['product_ndc','brand_name','generic_name'])
Спасибо за любую помощь.
Вот реальный код, который я использую для получения данных, которые выдают ключевую ошибку.

Код: Выделить всё

import pandas as pd
import json
import requests, zipfile, io, os

cwd = os.getcwd()
zip_url = 'https://download.open.fda.gov/drug/ndc/drug-ndc-0001-of-0001.json.zip'
r = requests.get(zip_url)
z = zipfile.ZipFile(io.BytesIO(r.content))
z.extractall(cwd)

with open('drug-ndc-0001-of-0001.json', 'r') as file:
data = json.load(file)

packaging_data = pd.json_normalize(
data['results'],
record_path=["packaging"],
meta=['product_ndc', 'brand_name', 'generic_name']
)

active_ingredients_data = pd.json_normalize(
data['results'],
record_path=["active_ingredients"],
meta=['product_ndc', 'brand_name', 'generic_name']
)

Я соединил это с вашим ответом и столкнулся с теми же проблемами, что и до публикации вопроса.

Подробнее здесь: https://stackoverflow.com/questions/791 ... -not-found
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»