从多个数据帧python创建JSON

2024-04-23 12:00:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我的代码对于使用to_json的1个数据帧工作得非常好

enter image description here

但是现在我想在这个结果中有第二个数据帧。你知道吗

所以我想编一本字典就是答案。你知道吗

然而,它产生的结果低于这是不实际的。你知道吗

需要帮忙吗

我希望不用这些“\”就能生产出更漂亮的东西

enter image description here

一个简单的好例子

import pandas as pd
data = {'Name':['Tom', 'Jack', 'Steve', 'Ricky'],'Age':[28,34,29,42]}
df = pd.DataFrame(data)
df.to_json(orient='records')

一个简单的坏例子

import pandas as pd
data = {'Name':['Tom', 'Jack', 'Steve', 'Ricky'],'Age':[28,34,29,42]}
df = pd.DataFrame(data)
{"result_1": df.to_json(orient='records')}

我也试过了

jsonify({"result_1": df.to_json(orient='records')})

以及

{"result_1": [df.to_json(orient='records')]}

Tags: to数据nameimportjsonpandasdfdata
1条回答
网友
1楼 · 发布于 2024-04-23 12:00:53

嗨,我想你走对了。 我的建议是使用json.loads文件解码json并创建字典列表。你知道吗

正如您之前所说,我们可以创建一个数据帧,然后使用df.to\u json格式转换自身。 然后使用json.loads文件设置json格式的数据并创建一个字典插入到列表中,例如:

data = {}
jsdf = df.to_json(orient = "records")
data["result"] = json.loads(jsdf)

将元素添加到字典中,如下所示,您会发现这样的情况:

{"result1": [{...}], "result2": [{...}]}

PS: 如果要为不同的数据帧生成随机值,可以使用python中的faker库。 e、 g.:

from faker import Faker

faker = Faker()

for n in range(5):
    df.append(list(faker.profile().values()))
df = pd.DataFrame(df, columns=faker.profile().keys())

相关问题 更多 >