【问题标题】:merging two lists of dictionaries with different keys合并两个具有不同键的字典列表
【发布时间】:2020-09-05 03:56:57
【问题描述】:

我有两个数据集,如下所示(这两个数据集长得多 10k-18k。) 如果我需要在示例中添加更多条目,请告诉我。

A = [{'air_temperature_celcius': '7', 'date' : 2010-08-20', 'relative_humidity' : '37.9', 'station': '2002-022A', 'wind_speed_knots': '5.5'}] 

B = [{'latitude': '-37.591', 'longitude': '148.111', 'datetime':'2019-10-02T03:52:12', 'surface_temp':'57', 'confidence': '83', 'power' : '26.7'}]

鉴于他们没有类似的密钥,我将如何加入他们?最接近的可能是键:date 和键:datetime,但它们是不同的值。我计划使用基于划分和广播的并行连接算法,可能使用基于散列的本地连接?我只是不确定当他们没有共同属性时如何加入他们。

提前谢谢大家。

【问题讨论】:

  • 欢迎来到 Stack Overflow!您似乎在要求某人为您编写一些代码。 Stack Overflow 是一个问答网站,而不是代码编写服务。请see here学习如何写出有效的问题。
  • 你能展示一下你的尝试吗
  • 在您的示例中,字典相差近十年。结果是否应该合并 A 和 B 中与一天相同的字典(即 A 和 B 的最小粒度时间参考)?
  • 我不想要代码,我可以自己纠正。我需要帮助的是什么加入这两个表,因为我知道他们需要一个共享密钥对吗?此外,两个数据集中的日期范围从 2009 年到 2019 年
  • @BethanyHooper——找到一个通用键是我提出问题的原因。唯一常见的字段是日期,但在您的示例中,它们相距甚远。问题是他们需要多接近才能考虑从 A 和 B 匹配的日期(例如,匹配到某一天)?

标签: python list dictionary join


【解决方案1】:

由于 A 和 B 是列表,您可以使用 extend() 方法将它们合并为 A.extend(B)

【讨论】:

  • 我正在寻找一种特殊的并行连接方法......不幸的是 A.extend(B) 不会削减它
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-09-11
  • 2021-11-26
  • 1970-01-01
  • 2017-04-20
  • 2019-11-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多