Python 将雅虎财务列表转换为Dataframe

Python 将雅虎财务列表转换为Dataframe,python,Python,无法在dataframe中转换此列表。它正在转换为dataframe,但由于JSON的形式为: import pandas as pd import urllib import time import sys baseurl = "https://query.yahooapis.com/v1/public/yql?" yql_bs_query = 'select * from yahoo.finance.historicaldata where symbol = "YHOO" and start

无法在dataframe中转换此列表。

它正在转换为dataframe,但由于JSON的形式为:

import pandas as pd
import urllib
import time
import sys
baseurl = "https://query.yahooapis.com/v1/public/yql?"
yql_bs_query = 'select * from yahoo.finance.historicaldata where symbol = "YHOO" and startDate = "2009-09-11" and endDate = "2010-03-10"'
yql_bs_url = baseurl + urllib.parse.urlencode({'q':yql_bs_query}) + "&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback="
bs_json = pd.io.json.read_json(yql_bs_url)
bs_json.values
YHOO = bs_json.values.tolist()
您只需单独下载JSON,索引以获取报价数据,然后将其转换为数据帧:

{u'query': {u'count': 124,
        u'created': u'2017-01-26T05:44:52Z',
        u'diagnostics': {u'build-version': u'2.0.84',
...

它正在转换为数据帧,但该帧只有1列和5行,因为JSON的形式是:

import pandas as pd
import urllib
import time
import sys
baseurl = "https://query.yahooapis.com/v1/public/yql?"
yql_bs_query = 'select * from yahoo.finance.historicaldata where symbol = "YHOO" and startDate = "2009-09-11" and endDate = "2010-03-10"'
yql_bs_url = baseurl + urllib.parse.urlencode({'q':yql_bs_query}) + "&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback="
bs_json = pd.io.json.read_json(yql_bs_url)
bs_json.values
YHOO = bs_json.values.tolist()
您只需单独下载JSON,索引以获取报价数据,然后将其转换为数据帧:

{u'query': {u'count': 124,
        u'created': u'2017-01-26T05:44:52Z',
        u'diagnostics': {u'build-version': u'2.0.84',
...

谢谢sundance谢谢sundance