Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将python数据帧转换为嵌套json并在本地保存_Python_Json - Fatal编程技术网

如何将python数据帧转换为嵌套json并在本地保存

如何将python数据帧转换为嵌套json并在本地保存,python,json,Python,Json,我的python代码中有一个数据帧: emp_id skillset experience emp_name department 0 1120 java 7 Gary Lobortis 1 1120 python 1 Gary Lobortis 2 1120 Analytics 7 Gary Lobortis 3 1122 Ora

我的python代码中有一个数据帧:

 emp_id   skillset  experience  emp_name department
0    1120       java           7      Gary   Lobortis
1    1120     python           1      Gary   Lobortis
2    1120  Analytics           7      Gary   Lobortis
3    1122     Oracle           3  Prescott      Velit
4    1129        AWS           7     Kevin       Sed 
5    1122       java           3  Prescott      Velit
请参见结果表的以下部分:


我需要这个数据帧的嵌套JSON输出。

假设您的数据帧的名称是
df
,下面应该会提供您所需要的

import json

j = (df.groupby(['emp_id','emp_name','department'], as_index=False)
       .apply(lambda x: x[['skillset','experience']].to_dict('r'))
       .reset_index()
       .rename(columns={0:'skills'})
       .to_json(orient='records'))


print(json.dumps(json.loads(j), indent=2, sort_keys=False))
输出:

[
  {
    "emp_id": 1120,
    "emp_name": "Gary",
    "department": "Lobortis",
    "skills": [
      {
        "skillset": "java",
        "experience": 7
      },
      {
        "skillset": "python",
        "experience": 1
      },
      {
        "skillset": "Analytics",
        "experience": 7
      }
    ]
  },
  {
    "emp_id": 1122,
    "emp_name": "Prescott",
    "department": "Velit",
    "skills": [
      {
        "skillset": "Oracle",
        "experience": 3
      },
      {
        "skillset": "java",
        "experience": 3
      }
    ]
  },
  {
    "emp_id": 1129,
    "emp_name": "Kevin",
    "department": "Sed",
    "skills": [
      {
        "skillset": "AWS",
        "experience": 7
      }
    ]
  }
]

向我们展示你的努力?谢谢,但我得到一个错误:AttributeError Traceback(最近一次调用last)in()5 df=result 6-->7 j=(df.groupby(['emp_id','emp_name','department','department',as_index=False)8.apply(lambda x:x['skillset','experience'])to_dict('r'))9.reset_index()AttributeError:“dict”对象没有属性“groupby”emp_id emp_name部门技能1120 Gary Lobortis技能集体验java 7 python 1分析7 1122 Prescott Velit技能集体验Oracle 3 java 3 1129 Kevin Sed技能集体验AWS 7