繁体   English   中英

将字典(以列表元素为值)转换为 dataframe

[英]Convert dictionary (with list elements as values) to dataframe

我有一个字典(键是字符串,值是列表)如下所示:

d = {
    '5/8': [[12, 15], [15, 18]],
    '12/19': [[2, 3]],
    '20/22': [[13, 18], [28, 22], [17, 110]]}

我需要将它转换为 dataframe,键位于一列中,并根据相应值中列表元素的数量重复,并且键也被分成另外两列,如下所示:

     id    x    y
  '5/8'   12   15
  '5/8'   15   18
'12/19'    2    3
'20/22'   13   18
'20/22'   28   22
'20/22'   17   110

创建此 dataframe 的最有效方法是什么?

使用列表理解。

df = pd.DataFrame(
    [(k, x, y) for k,v in d.items() for x,y in v],
    columns=['id', 'x', 'y'])
df
      id   x    y
0    5/8  12   15
1    5/8  15   18
2  12/19   2    3
3  20/22  13   18
4  20/22  28   22
5  20/22  17  110

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM