python如何将dataframe转化为 想要的json格式

Posted ~小疯子~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python如何将dataframe转化为 想要的json格式相关的知识,希望对你有一定的参考价值。

想要将几列数据进行转化成json时

1 数据

想要的json格式:
部分数据:

category_id1: 
    album_id1: album_mean1,
    album_id2: album_mean2,
    album_id3: album_mean3,
    album_id4: album_mean4
 ,
 category_id2: 
    album_id1: album_mean1,
    album_id5: album_mean5,
    album_id6: album_mean6,
    album_id7: album_mean7


27: 309: 0.897,
  612: 0.836,
  613: 0.81,
  774: 0.777,
  25: 0.762,
  38: 0.732,
  50: 0.675,
  332: 0.659,
  371: 0.483,
 7: 532: 0.864,
  374: 0.856,
  802: 0.853,
  716: 0.843,
  411: 0.84,
  798: 0.832,
  306: 0.796,
  12: 0.795

方法一:

ghh = hg[['category_id', 'album_id', 'album_mean']]
from collections import defaultdict
category_album_dic = defaultdict(dict)

for album_id, album_mean, category_id in ghh.itertuples(index=False):
    category_album_dic[album_id][album_mean] = category_id

category_album_dic = dict(category_album_dic)

方法2:

result = dict()
for index, row  in ghh.iterrows():
    album_id, album_mean, category_id = row 
    result.setdefault(album_id, ).update(album_mean:category_id)
result

将两列转化为字典:

data_dict = hg.groupby('category_id').album_id.apply(list).to_dict()

1: [532, 716, 798, 12, 420, 375, 774, 22, 509, 60, 808, 49, 335],
 2: [322,721,722,792,473,471,472,720,95,791,304,664,790,801]
     

另外一种:

alb.groupby('album_id').apply(lambda x: col:x[col].to_list()[0] for col in x.columns if col != 'album_id').to_dict()

3: ‘album_name’: ‘天线宝宝 第二季’, ‘category_name’: ‘动画’,
8: ‘album_name’: ‘小企鹅啵乐乐 第四季 英文版’, ‘category_name’: ‘动画’,
9: ‘album_name’: ‘小企鹅啵乐乐儿歌 英文版’, ‘category_name’: ‘英语’,
10: ‘album_name’: ‘小公交车太友 第二季’, ‘category_name’: ‘动画’,
11: ‘album_name’: ‘小公交车太友 第二季 英文版’, ‘category_name’: ‘动画’,
12: ‘album_name’: ‘小公交车太友儿歌 英文版’, ‘category_name’: ‘英语’,
13: ‘album_name’: ‘方块熊之莉娅公主’, ‘category_name’: ‘玩具’,
14: ‘album_name’: ‘蓝迪唐诗宋词’, ‘category_name’: ‘早教’,
15: ‘album_name’: ‘海底小纵队 英文版’, ‘category_name’: ‘动画’,
16: ‘album_name’: ‘海底小纵队’, ‘category_name’: ‘动画’,
18: ‘album_name’: ‘乔治律动儿歌’, ‘category_name’: ‘儿歌’,
19: ‘album_name’: ‘亲宝交通工具儿歌’, ‘category_name’: ‘儿歌’,
20: ‘album_name’: ‘亲宝儿歌’, ‘category_name’: ‘儿歌’,
21: ‘album_name’: ‘亲宝恐龙世界’, ‘category_name’: ‘儿歌’,
22: ‘album_name’: ‘亲宝英语说唱’, ‘category_name’: ‘英语’,
23: ‘album_name’: ‘起司公主自我保护’, ‘category_name’: ‘早教’

以上是关于python如何将dataframe转化为 想要的json格式的主要内容,如果未能解决你的问题,请参考以下文章

如何将一个dataframe转化为矩阵

如何将list转化为data frame

使用python读取和保存为excelcsvtxt文件以及对DataFrame文件的基本操作

python 如何将QueryDict转化为dict | 18

pandas将dataframe的索引转化为列表list数据(convert dataframe index into a list)

pandas将dataframe原有的数据列名称转化为整数数值列名称(convert dataframe column labelsl into integers)