将具有相同键的字典列表转换为高数据帧-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

将具有相同键的字典列表转换为高数据帧

2019-01-22 10:34:32 1286 1

数据框有一列,其中包含具有相同键名的字典列表。如何将其转换为高数据帧?数据帧如图所示。

A B
1 [{"name":"john","age":"28","salary":"50000"},{"name":"Todd","age":"36","salary":"54000"}]
2 [{"name":"Alex","age":"48","salary":"70000"},{"name":"Mark","age":"89","salary":"150000"}]
3 [{"name":"jane","age":"36","salary":"20000"},{"name":"Rose","age":"28","salary":"90000"}
如何将以下数据帧转换为下面的数据帧

A name age salary
1 john 28 50000
1 Todd 36 54000
2 Alex 48 70000
2 Mark 89 150000
3 jane 36 20000
3 Rose 28 90000

取消 提交回答
全部回答(1)
  • 一码平川MACHEL
    2019-07-17 23:26:08

    newdf=unnesting(df,['B'])
    pd.concat([newdf,pd.DataFrame(newdf.pop('B').tolist(),index=newdf.index)],axis=1)
    A age name salary
    0 1 28 john 50000
    0 1 36 Todd 54000
    1 2 48 Alex 70000
    1 2 89 Mark 150000
    2 3 36 jane 20000
    2 3 28 Rose 90000
    更多信息我附加了自我防范功能,您也可以在我链接的页面中找到它

    def unnesting(df, explode):

    idx=df.index.repeat(df[explode[0]].str.len())
    df1=pd.concat([pd.DataFrame({x:np.concatenate(df[x].values)} )for x in explode],axis=1)
    df1.index=idx
    return df1.join(df.drop(explode,1),how='left')
    0 0
相关问答

1

回答

标称数据的计算方法有哪些啊?

2022-08-02 20:56:19 144浏览量 回答数 1

1

回答

网络数据是什么啊?

2022-07-31 18:26:03 85浏览量 回答数 1

1

回答

大数据是什么啊?

2022-03-30 20:41:50 472浏览量 回答数 1

1

回答

快照可以迅速恢复数据的场景是哪里?

2021-12-13 15:40:35 523浏览量 回答数 1

1

回答

数据库中的候选键是什么 ?

2021-10-02 22:19:16 112浏览量 回答数 1

1

回答

如何在字典中添加键?(根据现有数据)

2020-03-23 18:51:50 144浏览量 回答数 1

1

回答

数据类型之间的转换?

2019-12-02 14:42:16 462浏览量 回答数 1

1

回答

补数据问题

2017-12-04 19:18:09 3066浏览量 回答数 1

0

回答

元数据库数据字典是什么?(2)

2017-10-31 13:59:59 2486浏览量 回答数 0

5

回答

关系型数据库能不能做负载均衡啊?

2014-02-15 16:19:46 7039浏览量 回答数 5
47
文章
723
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载