我试图将下面的json数据规范化,但是“权限”数组的数据还没有标准化。我使用了熊猫的“正常化”方法,但没有达到预期的产量。我想要每个对象的权限数组中的所有数据("permissions.id“、"permissions.self”、"permissions.holder.type“等等)(其中会有多个对象),有人能帮我解决这个问题吗?
{
"permissionSchemes": [
{
"expand": "permissions,user,group,projectRole,field,all",
"id": 10002,
"self": "https://api.atlassian.com/ex/jira/bacd1a93-d349-44c5-b786-b79cc80f7d31/rest/api/3/permissionscheme/10002",
"name": "CDP: Simplified Permission Scheme",
"scope": {
"type": "PROJECT",
"project": {
"id": "10002"
}
},
"permissions": [
{
"id": 11079,
"self": "https://api.atlassian.com/ex/jira/bacd1a93-d349-44c5-b786-b79cc80f7d31/rest/api/3/permissionscheme/10002/permission/11079",
"holder": {
"type": "projectRole",
"parameter": "10106",
"expand": "projectRole"
},
"permission": "VIEW_ISSUES"
},
{
"id": 11078,
"self": "https://api.atlassian.com/ex/jira/bacd1a93-d349-44c5-b786-b79cc80f7d31/rest/api/3/permissionscheme/10002/permission/11078",
"holder": {
"type": "projectRole",
"parameter": "10106",
"expand": "projectRole"
},
"permission": "VIEW_PROJECTS"
},
]
}
]
}发布于 2022-04-07 14:59:14
您可以尝试使用pandas.json_normalize()
df = pd.json_normalize(data['permissionSchemes'], record_path=['permissions'], meta=['expand', 'id', 'self', 'name', ['scope', 'type'], ['scope', 'project', 'id']], record_prefix='permissions.') permissions.id \
0 11079
1 11078
permissions.self \
0 https://api.atlassian.com/ex/jira/bacd1a93-d349-44c5-b786-b79cc80f7d31/rest/api/3/permissionscheme/10002/permission/11079
1 https://api.atlassian.com/ex/jira/bacd1a93-d349-44c5-b786-b79cc80f7d31/rest/api/3/permissionscheme/10002/permission/11078
permissions.permission permissions.holder.type permissions.holder.parameter \
0 VIEW_ISSUES projectRole 10106
1 VIEW_PROJECTS projectRole 10106
permissions.holder.expand expand \
0 projectRole permissions,user,group,projectRole,field,all
1 projectRole permissions,user,group,projectRole,field,all
id \
0 10002
1 10002
self \
0 https://api.atlassian.com/ex/jira/bacd1a93-d349-44c5-b786-b79cc80f7d31/rest/api/3/permissionscheme/10002
1 https://api.atlassian.com/ex/jira/bacd1a93-d349-44c5-b786-b79cc80f7d31/rest/api/3/permissionscheme/10002
name scope.type scope.project.id
0 CDP: Simplified Permission Scheme PROJECT 10002
1 CDP: Simplified Permission Scheme PROJECT 10002https://stackoverflow.com/questions/71783129
复制相似问题