微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Pandas 列有一个 np json 对象数组

如何解决Pandas 列有一个 np json 对象数组

我有一个具有以下形状的熊猫数据框。

enter image description here

如您所见,列实体有一个 JSON 对象的 np 数组,有时它是空的。 我想通过获取前 5 个 JSON 对象将此列展平到数据框中。 每个 JSON 对象都有索引(名称、类型、mid、wikipediaUrl、numMentions、avgSalience),但每行中的对象数量从非到 30 或 40 不等。 这是一个可重现的最小样本。

import json 
dict0 = [{'name': 'require-once','type': 'OTHER','mid': None,'wikipediaUrl': None,'numMentions': 4,'avgSalience': 0.014624},{'name': 'require_once','avgSalience': 0.008366},{'name': 'funkytaurusmedia.com/includes/header.PHP','type': 'UNKNowN','mid': '/m/02dnj_','wikipediaUrl': 'https://en.wikipedia.org/wiki/Header_(computing)','numMentions': 2,'avgSalience': 0.007887},{'name': 'public_html','mid': '/m/03g20','wikipediaUrl': 'https://en.wikipedia.org/wiki/HTML','numMentions': 28,'avgSalience': 0.007139},'type': 'PERSON','numMentions': 1,'avgSalience': 0.007139}]
dict1 = [{'name': 'require-once1','avgSalience': 0.007139}]
df = pd.DataFrame({"date":{0:1522254600000,1:1132254600000 },"url":{0:"http",1:"http1"},"lang":{0:"de",1:"de"},"polarity":{0:-0.8,1:0.8},"magnitude":{0:10.3,1:11},"score":{0:-0.5,1:0.5},"entities": {0:dict0,1:dict1}})
df

提前致谢。

解决方法

您可以读取列元素,并从中创建一个新的数据框,然后将它们连接在一起:

df.join(pd.DataFrame(df['entities'].tolist()))

            date   url  ... numMentions  avgSalience
0  1522254600000  http  ...           4     0.014624
1  1522254600000  http  ...           4     0.008366
2  1522254600000  http  ...           2     0.007887
3  1522254600000  http  ...          28     0.007139
4  1522254600000  http  ...           1     0.007139
[5 rows x 13 columns]

对于你的第二个例子,你可以试试这个:

pd.concat(df.apply(lambda row: pd.DataFrame(row['entities'],[row['date']]*len(row['entities'])),axis=1).values)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?