问题标签 [json-normalize]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何将嵌套的 JSON 下载到 pandas 数据框中
希望提高我的数据科学技能。我正在练习从体育网站提取 url 数据,并且 json 文件有多个嵌套字典。我希望能够提取这些数据以在 matplotlib 等中映射我自己的自定义排行榜形式,但是很难将 json 转换为可行的 df。
主网站是:https ://www.usopen.com/scoring.html
看看背景,我相信实时信息是从下面的短代码中列出的链接中提取的。我正在使用 Jupyter 笔记本。我可以成功拉取数据。
但正如您所看到的,它正在拉取多个嵌套字典,这使得拉取简单的数据框变得非常困难。
只是在寻找球员,得分达到标准杆,总杆数和拉杆数。任何帮助将不胜感激,谢谢!
python - 如何将多列字典转换为数据框?
我正在使用 cryptocompare API 并尝试为一堆不同的代码提取历史数据。
代码从 Excel 电子表格中读取,然后通过 API 加载以获取每个代码的历史价格。
这是我目前收到的数据框:https ://docs.google.com/spreadsheets/d/1jQ7F0H2D-voTBxjHI3QVPTRNyR4m4qKob8NE04JWVY0/edit?usp=sharing
我想知道几件事:
- 如何让索引成为日期和
- 我将如何访问“关闭”数据点?
这是目前我的代码:
样本数据
- 前 5 行
Crypto Scrape df.xlsx
python - 从列中的dict中提取值作为列值,存在NA
我目前正在尝试从出现在一系列列中的几个 dicts 中提取值,有两个问题:
由于有 4 列有问题,因此它们是通过以下代码行从先前的 dict-in-column 值中解压缩的:
这个字典是在以下形式的列中解压缩一个字典:
dictd
的长度在 0-4 之间。
在解压数据框之前,我解压的列如下所示:
解压后它现在有形式
虽然这最初解决了我的第一个问题,但我现在正试图将值从包含字典的列中提取出来,对此我有点不知所措。
我尝试过的潜在解决方案只是为每一列(a、b、c)运行上面的代码段,但这既丑陋又低效。至多我知道,pd.json_normalize
当我第一次启动我的程序时,一个简单的修复方法是对初始数据帧进行修复,但是对于似乎可以轻松解决的问题,这将需要进行重大修复和重构。作为参考,理想的输出是这样的:
整个数据框有几十万行,有 20 列在不断变化。
python - 嵌套 JSON:pandas.json_normalize 和错误不可散列类型:'dict'
在这里,我从请求响应中得到了一个嵌套的 JSON,例如:
我想要一个扁平的df,例如:
日期、daily_stats.consume_data.fans_go_detail_count、consume_detail.click_rate 等。
将它输入 pandas.json_normalize 我得到:
问题:
- 'daily_stats' 和 'jump_rate' 仍然打包在列表中,例如:
- 'fans_data': {}、'interaction_data': {}、'ranking_data': {} 等空字段缺失。
我试图添加 record_path=r.json['daily_stats'] 然后我得到:
当然可以手动将每个循环解包到 dfs 并加入并转换为一个平面,但我有一种感觉有一种方法可以不用大惊小怪。
python - 如何提取嵌套 JSON 的所有元素?
我正在尝试将以下 JSON 代码转换为 csv 文件并通过 python 解析文件。我不确定如何超越“变体”部分。
我必须阅读各种数组列表,但大多数属性都是可选的。
想看看如何有效,我可以读取每个列表下的每个属性,以便我可以将它们作为逗号分隔的记录写入输出文件,该文件用作我的 ETL 处理负载的输入。
这是我的代码:
下面给出的快照是一个 JSON 输入文件:
使用完整的 JSON 数据文件运行以下给定代码时引发以下错误
python - 如何从多个 API 调用更新熊猫数据框
我需要做一个python脚本来
- 读取包含列 (
person_id
,name
,flag
) 的 csv 文件。该文件有 3000 行。 - 基于
person_id
来自 csv 文件,我需要调用一个 URL 传递person_id
来做一个 GET http://api.myendpoint.intranet/get-data/1234 该 URL 将返回一些信息person_id
,如下例所示。我需要获取所有租金对象并保存在我的 csv 中。我的输出需要是这样的
响应示例
- 从 csv 的响应中保存附加数据后,我需要使用 URL 上的 carId 从另一个端点获取数据。里程结果必须保存在同一个csv中。 http://api.myendpoint.intranet/get-mileage/6638 http://api.myendpoint.intranet/get-mileage/5566
每次调用的返回将是这样的
最终输出必须是
有人可以帮我写这个脚本吗?可以与 pandas 或任何 python 3 库一起使用。
python - 如何将 AWS CloudTrail JSON 日志读入 pandas 数据帧
我在使用运行 Anaconda3 的 Jupyterlab 将数据加载到 Pandas 时遇到问题,因为我的 VM 突然停机。启动后,我发现我的代码由于某种原因不再工作。这是我的代码:
当我运行代码时,它给了我这样的 KeyError 消息:
当我运行 print(awss.info()) 或 print(awsc.info()) 时数据帧 awsc 的输出:
有什么办法可以解决这个问题吗?问题是来自 Pandas 还是 Anaconda?
python-3.x - 如何将嵌套字典转换为熊猫数据框
我正在尝试转换包含在其他数据框内的数据框,例如:
我尝试使用:
但结果数据框如下所示:
任何想法?
python - 如何处理将 isbnlib.meta 与 pandas 一起应用返回的错误
当您输入 isbn 时,我正在使用isbnlib.meta
它来提取元数据(书名、作者、出版年份等)。我有一个包含 482,000 个 isbns 的数据框(列标题:isbn13)。当我运行这个函数时,我会得到一个错误,比如NotValidISBNError
停止它的轨道中的代码。我想要发生的是,如果出现错误,代码将简单地跳过该行并移至下一行。
这是我现在的代码:
list_df[0]
是前 20,000 行,因为我试图通过数据框进行分块。我刚刚手动输入此代码 24 次来处理每个块。
我尝试尝试:并且除了:但最终发生的只是代码停止并且我没有收到任何元数据报告。
追溯:
python - 在 pandas 中拆开 json 字典
我有一个给你。
所以我试图解压缩我从 api 获得的一些专有数据。
对于一个可重复的示例,一旦我解压缩 json 数据,我会得到一个看起来像这样的字典
然后我使用此代码制作数据框
现在这给了我一个看起来像这样的数据框。
现在,我发现问题在于,当我使用 json_normalize 时,它没有下降到足够的水平。如果我做类似的事情
它返回给我一个 2 行 2 列的数据框。如果我做
我得到一个在 order_items 列中有数据框对象的数据框,我不太清楚如何使用。
我想要做的是解压缩我在较低级别制作的表格,并使我的数据框更长。我希望它看起来像这样
关于如何做到这一点的任何建议?
附言。我认为 json_normalize 没有下降到足够水平的原因是因为 order_items 的长度不同。