如何转换大熊猫数据帧到JSON在Django模板中使用
问题描述:
我试图从数据帧如何转换大熊猫数据帧到JSON在Django模板中使用
response_data = [
{ "x_axis": 30, "y_axis": 30, "radius": 20, "color": "green" },
{ "x_axis": 70, "y_axis": 70, "radius": 20, "color": "green" },
{ "x_axis": 110, "y_axis": 100, "radius": 20, "color": "blue" }
]
result = HttpResponse(json.dumps(response_data), content_type = 'application/json')
创建JSON如果我使用上面的我会得到
Content-Type: application/json [{"color": "green", "y_axis": 30, "x_axis": 30, "radius": 20}, {"color": "green", "y_axis": 70, "x_axis": 70, "radius": 20}, {"color": "blue", "y_axis": 100, "x_axis": 110, "radius": 20}]
这正是格式我想,但如果我尝试从数据框使用类似的东西:
d = {'one' : pd.Series([1., 2., 3.]),'two' : pd.Series([1., 2., 3., 4.])}
df0_fa = pd.DataFrame(d)
df0_js = df0_fa.to_json()
result2 = HttpResponse(json.dumps(df0_js), content_type = 'application/json')
我得到了这个json格式:
Content-Type: application/json "{\"one\":{\"0\":1.0,\"1\":2.0,\"2\":3.0,\"3\":null},\"two\":{\"0\":1.0,\"1\":2.0,\"2\":3.0,\"3\":4.0}}"
但我什么我真正想要的是
Content-Type: application/json [{"one" : 1.0,"two" :1.0},{"one" : 2.0,"two" :2.0},{"one" : 3.0,"two" :3.0},{"one" : null,"two" :4.0}]
什么反斜线在这里做什么?和[]我尝试了不同的东方设置,但不起作用。任何建议,将不胜感激。谢谢。
答
你正在将它转换为JSON。 df0_fa.to_json()
正在这样做,然后json.dumps()
正在这样做。只要做到:result2 = HttpResponse(df0_js, content_type = 'application/json')
的一些注意事项上to_json()
:http://pandas.pydata.org/pandas-docs/dev/generated/pandas.DataFrame.html
一个好的页面上json.dumps()
:http://www.pythonforbeginners.com/python-on-the-web/parsingjson/
谢谢!我带了我整整一天。谢谢谢谢 – JPC 2014-11-04 20:38:00