Python 如何将数据透视表转换为JSON

Python 如何将数据透视表转换为JSON,python,pandas,pivot-table,Python,Pandas,Pivot Table,我使用pandas pivot table创建了一个如下所示的表 print(pd_pivot_table) category_id name 3 name3 0.329204 24 name24 0.323727 31 name31 0.319526 19 name19 0.008992 23 name23 0.005897

我使用pandas pivot table创建了一个如下所示的表

print(pd_pivot_table)

category_id  name
3            name3        0.329204
24           name24       0.323727
31           name31       0.319526
19           name19       0.008992
23           name23       0.005897
我想基于这个pivot_表创建JSON,但不知道如何创建

[
  {
    "category_id": 3,
    "name": "name3",
    "score": 0.329204
  },
  {
    "category_id": 24,
    "name": "name24",
    "score": 0.323727
  },
  {
    "category_id": 31,
    "name": "name31",
    "score": 0.319526
  },
  {
    "category_id": 19,
    "name": "name19",
    "score": 0.008992
  },
  {
    "category_id": 23,
    "name": "name23",
    "score": 0.005897
  }
]
或者,首先我不知道如何获取category_id和name值。 即使您在下面编写代码,也无法获得所需的结果

for data in pd_pivot_table:
  print(data) # 0.329204
  print(data["category_id"]) # *** IndexError: invalid index to scalar variable.
您可以先将其用于
数据帧
,然后:

详细信息

print (df.reset_index())
   category_id    name     score
0            3   name3  0.329204
1           24  name24  0.323727
2           31  name31  0.319526
3           19  name19  0.008992
4           23  name23  0.005897

print (type(df.reset_index()))
<class 'pandas.core.frame.DataFrame'>
打印(df.reset_index())
类别名称得分
0 3名称3 0.329204
1 24姓名24 0.323727
2 31姓名31 0.319526
3 19名称19 0.008992
4 23名称23 0.005897
打印(类型(df.reset_index()))
df.reset_index().to_json('file.json',orient='records')
print (df.reset_index())
   category_id    name     score
0            3   name3  0.329204
1           24  name24  0.323727
2           31  name31  0.319526
3           19  name19  0.008992
4           23  name23  0.005897

print (type(df.reset_index()))
<class 'pandas.core.frame.DataFrame'>