我有如下的数据框前几个条目
df:
idx no surity name percentage result
0 0.29999999999999993 0.974185 computer 0.84 1
1 0.18000000000000016 1.0 vegetables 1.14 1
2 0.27 1.0 electronics 1.32 1
3 0.17999999999999994 0.999655 books 1.59 0
4 0.8399889999999997 0.99992 fruits 1.770008 2
下面我想以两种不同的方式导出json,其中文件是单次导出,但是,首先作为初始值,而不是名称是结果的值,在后面的最终值中,只有前四列没有这样的更改
"initial":[
{
"no":0.3,
"surity":"null",
"name":"1",
"percentage":"0.84",
},
{
"no":0.18,
"surity":"null",
"name":"1",
"percentage":"1.14",
},
{
"no":0.27,
"surity":"null",
"name":"1",
"percentage":"1.32",
},
{
"no":0.18,
"surity":"null",
"name":"0",
"percentage":"1.59",
},
{
"no":0.83999,
"surity":"null",
"name":"2",
"percentage":"1.770007",
}
]
"final":
[
{
"no":0.3,
"surity":"0.973225",
"name":"computer",
"percentage":"0.84",
},
{
"no":0.18,
"surity":"1.0",
"name":"vegetables",
"percentage":"1.14",
},
{
"no":0.27,
"surity":"1.0",
"name":"electronics",
"percentage":"1.32",
},
{
"no":0.18,
"surity":"0.999663",
"name":"books",
"percentage":"1.59",
},
{
"no":0.83999,
"surity":"0.99991",
"name":"fruits",
"percentage":"1.770007",
}
]
另外,第二个导出,我希望类似于initial,所有名称值顺序相同,以no求和,结果为单个条目,如下所示:
"initial":[
{
"no":3.3,
"surity":"null",
"name":"1",
"percentage":"0.84",
},
{
"no":0.18,
"surity":"null",
"name":"0",
"percentage":"1.59",
},
{
"no":0.83999,
"surity":"null",
"name":"2",
"percentage":"1.770007",
}
]
"final":
[
{
"no":0.3,
"surity":"0.973225",
"name":"computer",
"percentage":"0.84",
},
{
"no":0.18,
"surity":"1.0",
"name":"vegetables",
"percentage":"1.14",
},
{
"no":0.27,
"surity":"1.0",
"name":"electronics",
"percentage":"1.32",
},
{
"no":0.18,
"surity":"0.999663",
"name":"books",
"percentage":"1.59",
},
{
"no":0.83999,
"surity":"0.99991",
"name":"fruits",
"percentage":"1.770007",
}
]
所有这些都是关于按照你的指示系统化的
to_dict(orient="records")
提供准备DF时所需的内容drop()
列和rename()
列获得第一次导出groupby()
和agg()
获取聚合将获得第二次导出表1
exp2
相关问题 更多 >
编程相关推荐