gpt4 book ai didi

python - 如何保持从 Pandas DataFrame 到字典的行顺序

转载 作者:行者123 更新时间:2023-11-28 18:56:27 30 4
gpt4 key购买 nike

我有一个已按日期排序的 pandas DataFrame,但我需要将此 DataFrame 序列化为 dict python 结构以保持行顺序,以便稍后返回 JSON。

我使用字典,其中有一些键和值,我需要 DataFrame 作为值。我使用了 pd.to_dict() 但这并不能保持行的顺序。

我已经尝试使用 OrderedDict,但我无法使用 json.dumps() 对其进行序列化。我正在使用 python 2.7。

dic_data = {
'data':data.to_dict(),
'variable':variables[variable],
'unit':units[variable],
'limits':{
'limite_superior':lim_sup,
'limite_inferior':lim_inf
}
}

return HttpResponse(json.dumps(dic_data),content_type="application/json")

这是 datraframe 数据,我试图将其转换为行有序字典,以便稍后在 json 中序列化它

            date_time values
202 2018-09-01 10:00 0,9
203 2018-09-01 11:00 0,1
204 2018-09-01 12:00 0,0
205 2018-09-01 13:00 0,0
206 2018-09-01 14:00 0,0
207 2018-09-01 15:00 0,0
208 2018-09-01 16:00 0,0
209 2018-09-01 17:00 0,0

我从 de data dataframe 接收到的 json 对象具有以下结构:

{
date_time:{
0:"2018-09-01 20:00",
1:"2018-09-01 21:00",
....
},
values:{
0:20.54,
1:30.45,
.....
}

}

实际上我需要相同的结构,但行已排序。

最佳答案

你可以尝试使用to_dict方法的into参数:

from collections import OrderedDict

dic_data = {
'data':data.to_dict(into=OrderedDict),
'variable':variables[variable],
'unit':units[variable],
'limits':{
'limite_superior':lim_sup,
'limite_inferior':lim_inf
}
}

关于python - 如何保持从 Pandas DataFrame 到字典的行顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57844525/

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