将嵌套的JSON文件转换为python中的数据框

时间:2019-03-10 13:44:56

标签: python json

我有一个具有深层嵌套列的JSON文件,我看到了这篇文章

https://stackoverflow.com/a/41168691/10718214

我尝试了此代码

 df = pd.DataFrame.from_dict(json_normalize(data), orient='columns')

它可以工作,但是只需要嵌套的第一个, 例如,我有entities列,每一行都像这样:

{'hashtags': [{'text': 'ط±ظˆظٹظ‡_ط§ظ„ط¹ظ„ط§', 'indices': [65, 76]}], 'urls': [], 'user_mentions': [{'screen_name': 'a_albander', 'name': 'ط¹ط¨ط¯ط§ظ„ظ„ظ‡ ط§ظ„ط¨ظ†ط¯ط±', 'id': 248141082, 'id_str': '248141082', 'indices': [3, 14]}], 'symbols': [], 'media': [{'id': 1094650709386121218, 'id_str': '1094650709386121218', 'indices': [115, 138], 'additional_media_info': {'monetizable': False}, 'media_url': 'http://pbs.twimg.com/ext_tw_video_thumb/1094650709386121218/pu/img/W_V9kGPCPdgI3_G1.jpg', 'media_url_https': 'https://pbs.twimg.com/ext_tw_video_thumb/1094650709386121218/pu/img/W_V9kGPCPdgI3_G1.jpg', 'url': '', 'display_url': 'pic.twitter.com/iKMkqHCZbd', 'expanded_url': 'https://twitter.com/a_albander/status/1094651355287994369/video/1', 'type': 'photo', 'sizes': {'thumb': {'w': 150, 'h': 150, 'resize': 'crop'}, 'medium': {'w': 1200, 'h': 675, 'resize': 'fit'}, 'small': {'w': 680, 'h': 383, 'resize': 'fit'}, 'large': {'w': 1280, 'h': 720, 'resize': 'fit'}}, 'source_status_id': 1094651355287994369, 'source_status_id_str': '1094651355287994369', 'source_user_id': 248141082, 'source_user_id_str': '248141082'}]}

所以当我尝试上面的代码时,我将每个对象放在这样的单独列中

entities.hashtags, entities.media, entities.symbols, entities.urls, entities.user_mentions ....etc.

但是您可以看到entities.hashtags的嵌套列也没有拆分为单独的列

[{'text': 'ط´طھط§ط،_ط·ظ†ط·ظˆط±ط©', 'indices': [89, 101]}]

如何将它们拆分成这样?

entities.hashtags.text ,entities.hashtags.indices

有什么帮助吗?谢谢

0 个答案:

没有答案