python - импортировать данные из URL в панды - PullRequest
0 голосов
/ 29 апреля 2018

Не могли бы вы помочь мне закодировать импорт данных, поступающих с этого URL, в кадр данных pandas? Это временная серия взаимного фонда, и мне нужно провести статистический анализ и построить график.

http://tools.morningstar.it/api/rest.svc/timeseries_price/jbyiq3rhyf?currencyId=EURtype=Morningstar&frequency=daily&startDate=2008-04-01&priceType=&outputType=COMPACTJSON&id=F00000YU62]2]0]FOITA$$ALL&applyTrackRecordExtension=true

Любая подсказка ценится, чтобы понять, как она работает

спасибо

1 Ответ

0 голосов
/ 29 апреля 2018

Ответ, чтобы получить результат:

import requests
import pandas as pd
URL ='http://tools.morningstar.it/api/rest.svc/timeseries_price/jbyiq3rhyf?currencyId=EURtype=Morningstar&frequency=daily&startDate=2008-04-01&priceType=&outputType=COMPACTJSON&id=F00000YU62]2]0]FOITA$$ALL&applyTrackRecordExtension=true'
r = requests.get(URL)
# a= eval(r.content) Never user eval for online texts
df = pd.DataFrame(r.json())

Ответ, чтобы понять, что происходит

В своем ответе я использую маленький трюк, который не рекомендуется все время. Первый, Я использовал запрос, чтобы получить данные из URL и затем оценить их, используя функцию python eval, так как вы можете видеть их вложенный список. Но лучше использовать r.json()

pandas.DataFrame - это метод, который преобразует данные во фрейм данных, используя другой метод, например, вы можете использовать вложенный список или json-подобные данные (например, словари) для создания Dataframe.

Но в большинстве случаев результаты из Интернета могут стать пандой Dataframe, используя pd.read_csv, он анализирует данные, используя sep и lineterminator.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...