Датафрейм из JSON отформатирован как текст? - PullRequest
0 голосов
/ 09 ноября 2018

Можно ли создать фрейм данных из JSON, отформатированного как текст, а не как объект Python?

С объектом Python я мог бы, например, сделать:

from pandas.io.json import json_normalize
import requests

response = requests.get(url, params).json()
df = json_normalize(response)

но я хочу добиться того же с response = requests.get(url,params).text (хотя выравнивание не требуется).

Ответы [ 2 ]

0 голосов
/ 09 ноября 2018

Если ваш response = requests.get(url,params).text гарантированно предоставит вам правильную строку JSON, тогда все, что вам нужно сделать, это:

from pandas.io.json import json_normalize, loads
import requests

response = requests.get(url, params).text
df = json_normalize(loads(response))

Здесь мы используем json loads для преобразования строки JSON в объект Python перед возвратом к json_normalize.

0 голосов
/ 09 ноября 2018

Я обычно создаю фрейм данных из json, используя read_json

import pandas as pd
import requests

data = requests.get(url, params).content
df = pd.read_json(data)
df.head()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...