как преобразовать этот вложенный JSON в столбчатой ​​форме в рамку данных Pandas

Я мог бы прочитать этот вложенный формат JSON в формате столбцов в pandas.

Схема JSON

Формат схемы JSON

введите описание изображения здесь

Скрипт Python

req = requests.get(REQUEST_API) returned_data = json.loads(req.text) # status print("status: {0}".format(returned_data["status"])) # api version print("version: {0}".format(returned_data["version"])) data_in_columnar_form = pd.DataFrame(returned_data["data"]) data = data_in_columnar_form["data"] 

ОБНОВИТЬ

Я хочу преобразовать следующую схему JSON в табличный формат как таблицу, как?

в очереди

Схема JSON

  "data":[ { "year":"2009", "values":[ { "Actual":"(0.2)" }, { "Upper End of Range":"-" }, { "Upper End of Central Tendency":"-" }, { "Lower End of Central Tendency":"-" }, { "Lower End of Range":"-" } ] }, { "year":"2010", "values":[ { "Actual":"2.8" }, { "Upper End of Range":"-" }, { "Upper End of Central Tendency":"-" }, { "Lower End of Central Tendency":"-" }, { "Lower End of Range":"-" } ] },... ] 

One Solution collect form web for “как преобразовать этот вложенный JSON в столбчатой ​​форме в рамку данных Pandas”

Pandas имеет функцию нормализации JSON (начиная с 0,13), прямо из документов:

 In [205]: from pandas.io.json import json_normalize In [206]: data = [{'state': 'Florida', .....: 'shortname': 'FL', .....: 'info': { .....: 'governor': 'Rick Scott' .....: }, .....: 'counties': [{'name': 'Dade', 'population': 12345}, .....: {'name': 'Broward', 'population': 40000}, .....: {'name': 'Palm Beach', 'population': 60000}]}, .....: {'state': 'Ohio', .....: 'shortname': 'OH', .....: 'info': { .....: 'governor': 'John Kasich' .....: }, .....: 'counties': [{'name': 'Summit', 'population': 1234}, .....: {'name': 'Cuyahoga', 'population': 1337}]}] .....: In [207]: json_normalize(data, 'counties', ['state', 'shortname', ['info', 'governor']]) Out[207]: name population info.governor state shortname 0 Dade 12345 Rick Scott Florida FL 1 Broward 40000 Rick Scott Florida FL 2 Palm Beach 60000 Rick Scott Florida FL 3 Summit 1234 John Kasich Ohio OH 4 Cuyahoga 1337 John Kasich Ohio OH 
  • Подавление научной нотации в пандах?
  • «Таблицы Zebra» в ноутбуке IPython?
  • Одновременное применение нескольких функций к объекту группы Pandas
  • pandas назначить новое имя столбца как строку
  • Умножьте два pandas DataFrames на основе столбца
  • ValueError: несоответствие dtype-буфера, ожидаемое значение 'float64_t', но получило 'float'
  • Метод pandas to_sql дает ошибку с столбцом даты
  • Сравнение pandas.Series для равенства, когда они содержат nan?
  • временной срез на втором уровне мультииндекса
  • Как применять различные функции к объекту groupby?
  • Как отображать полную (не усеченную) информацию о dataframe в html при преобразовании из pandas dataframe в html?
  • Python - лучший язык программирования в мире.