我有一个来自http请求的传入json。我可以毫无问题地得到结果。但是我似乎无法将其放入数据框。当这样做时,我最终将为null。我尝试了几种不同的数据框和其他形式。但这将导致错误,最终导致错误。
r=requests.get(URL + '/%s' % cmd ,auth = auth, headers=headers)
jsonRes = r.json()
res = json.dumps(jsonRes, indent=4)
print(res)
df = pd.read_json(res)
df.head()
传入的数据看起来像这样。
[
{
"delayed": 900,
"src": "CME",
"identifier": "ENQ100-1",
"type": "INDEX",
"country": "US",
"open": "14:30:00",
"close": "21:00:00",
"name": "NQ 100 Fut."
}
]
答案 0 :(得分:0)
阅读第二条评论后,结果非常清楚。只是为了清楚起见发布答案。
直接将传入的JSON与from_records一起使用将正确创建数据框。同样对于来自Spark的我来说,我尝试了诸如head()等不同的事情来打印数据帧。可以直接通过打印df来完成。
请注意,我尚未尝试使用嵌套数据框进行此操作。
def req(auth, headers, cmd=''):
r=requests.get(URL + '/%s' % cmd ,auth = auth, headers=headers)
jsonRes = r.json()
df = pd.DataFrame.from_records(jsonRes) # Use the Json directly
print(df)