gpt4 book ai didi

python - 如何将 pandas 数据框转换为 json 以在 django 模板中使用

转载 作者:行者123 更新时间:2023-11-28 21:18:20 25 4
gpt4 key购买 nike

我正在尝试从数据框创建 json

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')

如果我用上面的方法我会得到

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/

关于python - 如何将 pandas 数据框转换为 json 以在 django 模板中使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26744384/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com