【发布时间】:2021-02-19 06:50:03
【问题描述】:
我在 Python 的列表中有以下字典,我想提取“详细信息”的值并将其拆分为新列。我将字典存储在数据框中,如下所示:
id_x = ['1','2','3','4']
phone = ['45651','5465652','35453','09434']
detail = [[{'qty':'10', 'name':'indeed','code':'AAA'}],
[{'qty':'10', 'name':'indeed','code':'AAA'}, {'qty':'50', 'name':'erd','code':'BBB'}],
[{'qty':'13', 'name':'oilen','code':'CCC'}],
[]
]
df= pd.DataFrame({'id':id_x, 'phone':phone, 'detail':detail})
df
id phone detail
1 45651 [{'qty': '10', 'name': 'indeed', 'code': 'AAA'}]
2 5465652 [{'qty': '10', 'name': 'indeed', 'code': 'AAA', {'qty':'50', 'name':'erd','code':'BBB'}]
3 35453 [{'qty': '13', 'name': 'oilen', 'code': 'CCC'}]
4 09434 []
我希望得到列:id、phone、detail_qty、detail_name、detail_code
当元素超过1个时,它会提取到一个新行。
这是预期的数据框:
id phone detail_qty detail_name detail_code
1 45651 10 indeed AAA
2 5465652 10 indeed AAA
2 5465652 50 erd BBB
3 35453 13 oilen CCC
4 09434
能否请您告知如何获得所需的列表?
谢谢。
【问题讨论】:
-
请查看How to ask a good question。基本上,你应该尝试解决你的问题,发布你的代码,并提出一个具体的问题。
标签: python list dictionary