gpt4 book ai didi

json - 使用 OpenRefine(或 R)解析大而复杂的 Json 文件的最佳方法

转载 作者:行者123 更新时间:2023-12-01 01:55:55 25 4
gpt4 key购买 nike

我知道如何在 Open 精炼中解析 json 单元格,但这对我来说太棘手了。

enter image description here

我使用 API 提取了 4730 个 AirBNB 房间的日历,由它们的 ID 标识。

这是一个 Json 文件的示例:https://fr.airbnb.com/api/v2/calendar_months?key=d306zoyjsyarp7ifhu67rjxn52tv0t20&currency=EUR&locale=fr&listing_id=4212133&month=11&year=2016&count=12&_format=with_conditions

对于从现在到 2017 年 11 月的每个 ID 和一年中的每一天,我想提取这些房间的可用性(真或假)及其当天的价格。

enter image description here

我不知道如何解析这些信息。我猜这意味着一系列嵌套的 forEach,但我找不到使用 Open Refine 执行此操作的正确方法。

我当然试过了

forEach(value.parseJson().calendar_months, e, e.days) 

结果是一系列的字典数组扰乱了我。

任何帮助将不胜感激。如果在 Open Refine 中操作太困难,使用 R(或 Python)的解决方案对我来说也不错。

最佳答案

而不是仅仅将您的项目创建为文本,并使用 GREL 来解析...

最好的方法是使用我们的可视化导入器向导为 JSON 文件和 XML 文件选择您想要使用的 JSON 记录部分(您甚至可以使用指向 JSON 文件的 URL,如您的示例中所示)。 (视频教程在这里展示了如何:https://www.youtube.com/watch?v=vUxdB-nl0Bw)

  • 选择包含要解析和使用的记录的 JSON 部分(这可以是任何重复部分,只需选择其中之一,OpenRefine 将提取所有其余部分)
    enter image description here
  • 限制要在创建过程中加载的数据行数,或保留所有行的默认值。
    enter image description here
  • 单击创建项目,现在您处于行模式。但是,如果您认为 Records 模式可能更适合上下文,只需将项目再次导入为 JSON,然后选择内容的下一个外部区域,可能是包含键字段等的更大数组。在示例中,键字段可能是日期,以及为什么我突出显示给定日期的整个记录​​。这样 OpenRefine 将为每条记录提供键,而记录模式让您可以比行模式更好地使用它们。

  • 随意拿这个例子,让它更好,对所有人更有帮助,将它添加到我们的 Wiki 部分 How to Use

    关于json - 使用 OpenRefine(或 R)解析大而复杂的 Json 文件的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40715596/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com