1。
json_string = json.dumps(
df.to_dict(orient='records'),
indent=4
)
2。
json_string = json_string.replace('NaN', 'null')
有没有办法一步一步做到这两个?
最佳答案
更好的方法是使用DataFrame.to_json
-还可以将丢失的值替换为null
:
df = pd.DataFrame({'col':['a',
np.nan,
'c']})
json_string = df.to_json(orient='records')
print (json_string)
[{"col":"a"},{"col":null},{"col":"c"}]
您的解决方案应使用
simplejson
进行更改:import simplejson
json_string = simplejson.dumps(df.to_dict(orient='records'), ignore_nan=True)
print (json_string)
[{"col": "a"}, {"col": null}, {"col": "c"}]
或将缺少的值替换为
None
:json_string = json.dumps(
df.mask(df.isna(), None).to_dict(orient='records'),
indent=4,
)
print (json_string)
[
{
"col": "a"
},
{
"col": null
},
{
"col": "c"
}
]
关于python - 是否可以一步完成这些操作?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55999622/