python - python - 将数据从 url 导入到 pandas
问题描述
你能帮我把来自这个 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
任何提示都可以理解它是如何工作的
谢谢
解决方案
得到结果的答案:
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())
回答以了解发生了什么
在我的回答中,我使用了一个并不总是推荐的小技巧。首先,
我使用 request 从 URL 获取数据,然后使用 pythoneval
函数对其进行评估,您可以看到它是一个嵌套列表。 但使用它是一个更好的主意r.json()
pandas.DataFrame
是一种使用不同方法将数据转换为数据框的方法,例如,您可以使用嵌套列表或 json 之类的数据(如字典)来创建数据框。
但在大多数情况下,来自网络的结果可以变成一个 pandas 数据框,使用 pd.read_csv
它来解析数据sep
和lineterminator
。
推荐阅读
- scikit-learn - Scikit Learn PolynomialFeatures - include_bias 选项的用途是什么?
- wso2 - WSO2 身份服务器-relyingPartyRedirectUrls 不适用于 Chrome 或 Internet Explorer
- python - django模型/类中的项目设置
- python - 有没有办法减少ifs的数量?
- parsing - 为什么这个 ANTLR4 语法模棱两可?
- javascript - 我如何循环一些可变的次数?
- haskell - 哈斯克尔。在两个 Data.Map 中查找相似元素的最快方法
- windows - 在powershell脚本中循环
- android - 导航架构组件 - 带有登录屏幕的 BottomNavigationView
- javascript - 将图像放入字符串中