3
我试图打造出了从我的数据框中一个JSON文件,该文件类似于这样:格式化JSON
{'249' : [
{'candidateId': 751,
'votes':7528,
'vote_pct':0.132
},
{'candidateId': 803,
'votes':7771,
'vote_pct':0.138
}...
],
'274': [
{'candidateId': 891,
....
我的数据框看起来是这样的:
officeId candidateId votes vote_pct
0 249 751 7528 0.132198
1 249 803 7771 0.136465
2 249 818 7569 0.132918
3 249 827 9089 0.159610
4 249 856 2271 0.039881
5 249 877 7491 0.131548
6 249 878 8758 0.153798
7 249 895 6267 0.110054
8 249 1161 201 0.003530
9 274 736 4664 0.073833
10 274 737 6270 0.099256
11 274 757 4953 0.078407
12 274 769 5239 0.082935
13 274 770 7134 0.112933
14 274 783 7673 0.121466
15 274 862 6361 0.100697
16 274 901 7671 0.121434
使用功能我可以翻转数据帧的指数,并返回它作为一个JSON字符串为每个办公室的ID,像这样:
def clean_results(votes):
#trying to get a well structured json file
return votes.reset_index().to_json(orient='index', double_precision=2)
res_json = results.groupby(['officeId']).apply(clean_results)
但是,当我这样做,我结束ü p与新的数据帧,与一个JSON对象为每个officeID和JSON使用编号索引作为顶层,像这样:
{"0":{"index":0.0,"officeId":249.0,"candidateId":751.0,"total_votes":7528.0,"vote_pct":0.13},"1":{"index":1.0,"officeId":249.0,"candidateId":803.0,"total_votes":7771.0,"vote_pct":0.14},"2":...