Как написать графана простой JSON в таблицу запросов из JSON в Python - PullRequest
0 голосов
/ 06 декабря 2018

как преобразовать эти данные (json) в pandas Dataframe, чтобы он мог динамически заполнять «ключи» в виде столбцов и «значения» в виде строк в графическом файле json.на самом деле, это не идеальный формат массива, как мне манипулировать им, чтобы он работал как фрейм данных?Помощь будет принята с благодарностью.

data = {"name":"john","class":"fifth"}
       {"name":"emma","class":"sixth"}

Я хочу динамически заполнять ключи как столбцы и строки как значения независимо от того, сколько у нас json.

1 Ответ

0 голосов
/ 06 декабря 2018

Вы можете использовать метод pandas.DataFrame.from_dict(data). Документы

Пример может выглядеть так:

import pandas as pd
data = [{"name":"john","class":"fifth"},
       {"name":"emma","class":"sixth"}]
df = pd.DataFrame.from_dict(data)

Результат:

   class  name
0  fifth  john
1  sixth  emma

В этом случае данные уже являются списком словарей(Я предполагаю, что это то, что вы имеете в виду в своем вопросе).Если у вас есть данные в JSON-Strings / Files, вы можете использовать json.loads(data_string) / json.load(data_file) из json-модуля .

Обновление

Для данных таблицы графанаструктура, подобная этой:

data = [
  {
    "columns":[
      {"text":"Time","type":"time"},
      {"text":"Country","type":"string"},
      {"text":"Number","type":"number"}
    ],
    "rows":[
      [1234567,"SE",123],
      [1234567,"DE",231],
      [1234567,"US",321]
    ],
    "type":"table"
  }
]

Можно создать кадр данных pandas:

keys = [d['text'] for d in data[0]['columns']]
pd.DataFrame(data=data[0]['rows'], columns=keys)

Для результата, подобного:

   Time     Country  Number
0  1234567  "SE"     123
1  1234567  "DE"     231
2  1234567  "US"     312
...