Python -如何将Pandas Dataframe 转换为JSON对象?

oknwwptz  于 2023-01-01  发布在  Python
关注(0)|答案(2)|浏览(198)

我用df.to_json()把dataframe转换成json,但是它给了我一个json字符串,而不是一个对象。
我怎样才能得到JSON对象?
另外,当我把这些数据附加到数组中时,它会在json前后加上单引号,这会破坏json结构。
如何导出到json对象并正确追加?

    • 使用的代码**:
a=[]
     array.append(df1.to_json(orient='records', lines=True)) 
     array.append(df2.to_json(orient='records', lines=True))
    • 结果**:
['{"test:"w","param":1}','{"test:"w2","param":2}]']
    • 要求结果**:
[{"test":"w","param":1},{"test":"w2","param":2}]

谢谢大家!

8ulbf1ek

8ulbf1ek1#

我认为需要创建dict,然后转换为json

import json
d = df1.to_dict(orient='records')
j = json.dumps(d)

或者如果可能:

j = df1.to_json(orient='records')
baubqpgj

baubqpgj2#

以下是对我有效的方法:

import pandas as pd
import json

df = pd.DataFrame([{"test":"w","param":1},{"test":"w2","param":2}])
print(df)
    test  param
0     w      1
1    w2      2

现在我们转换成一个json字符串

d = df.to_json(orient='records')
print(d)
'[{"test":"w","param":1},{"test":"w2","param":2}]'

现在我们将这个字符串解析为一个dicts列表

data = json.loads(d)
print(data)
[{'test': 'w', 'param': 1}, {'test': 'w2', 'param': 2}]

相关问题