gpt4 book ai didi

analysis - 从不同来源识别和关联城市

转载 作者:行者123 更新时间:2023-12-04 15:32:56 28 4
gpt4 key购买 nike

我有不同的供应商,它们通过不同城市向我传递了一个 Excel,在每个城市,他们使用一些特殊的代码进行他们的操作和更多对我的业务有用的数据。

问题是我对所有这些城市都一团糟:

  • 我的数据库中有自己的城市,大约有 9000 条记录。
  • 提供者 A 给我他的 excel 或 webservice 以获得大约 6000。
  • 提供者 B 又给了我 5000。
  • 提供者 C ...等

  • 我的供应商提供的一些城市已经在我的数据库中,我只需更新我需要的所需数据。

    否则,我必须在我的数据库中插入那个新城市。

    而这,每次供应商给我这些城市的更新。

    嗯,主要问题是 我对一个城市的称呼与他们不同,他们彼此也不同 ...如何知道我是否已经拥有那个城市,或者我必须创建一个新城市,因为我们使用不同的名称?

    在我看来,我只能手动实现。将他们的城市与矿山进行比较。

    当然,工作量太大,所以我自己编写了脚本,并实现了 列文斯坦数据库功能,我可以自动查看更多重合的并通过单击选择它们。该脚本完成其余的工作(将他们对该城市的特殊操作代码更新为存储在我的数据库中的相应城市)。

    即使有了它,我仍然觉得我错过了一些东西。如果这些城市有一个 unicode,这将更容易和自动,但我没有任何代码比我的表标识符更能识别这些城市。我的提供商也是如此,尽管有些用途是向我提供他们提供的城市之间的邮政编码,但不是全部。

    有没有比我更好的解决方案?您通常使用的任何通用代码或任何其他方法?

    编辑 :
    嗯,每个城市都属于一个国家。当然,我正在考虑这一点。

    在我的城市表中,每个目的地都有一个 ID,然后是每个提供商的操作代码列(我知道,这可以用更多的关系更好地表示),加上国家代码、邮政编码、搜索引擎优化的 url...

    尊重 MagnusL 提到的解决方案,创建一个同义词表,为什么我需要存储同义词?关于您提到的与 levehnstein 和人类互动的脚本,这正是我目前正在做的事情:

    提供者和我的目的地表提供的每条记录。给定一个供应商城市记录,我将显示我的表中更一致的那些。

    但在此之前,我会自动链接所有在邮政编码和国家/地区重合的人。

    为每个城市更新我的提供商特殊操作代码需要做很多工作。我只是对人们如何处理这个问题感到好奇,我相信很多开发人员在某些时候不得不面对这个问题。

    最佳答案

    如果正确匹配城市很重要,我猜您的流程中必须有一些手动步骤。如果您包含较小城镇的名称,您有一天会遇到相同的名称实际上可能是两个不同国家的两个不同地方。 (在谷歌地图上试试慕尼黑,你会得到一个在德国和一个在北达科他州。)

    有点复杂,但我猜是 future 的证明,工作流程是在主数据表中使用 id 号代替城市名称。然后设置一个位置表,将这些 ID 号作为主键,您喜欢的城市名称,然后是国家代码、邮政编码、WGS84 坐标、大陆名称等所需的尽可能多的元数据列。为城市名称同义词添加另一个表,仅包含 id 编号和名称(id 列上没有 UNIQUE 约束)。

    让您的导入脚本在尽可能多的元数据(可能来自不同提供商的不同元数据)的帮助下尝试匹配城市,以及您提到的 Levehnstein 算法,并让它足够聪明,在这些情况下要求人机交互没有一个或多个城市匹配。它当然可以向您显示最接近的猜测,因此您可以选择正确的猜测并将其存储在同义词表中。

    (是的,要到达那里需要大量的编码。如果您觉得值得与否取决于您进行这些更新的频率。)

    提示:维基百科有不同城市名称的文章,即 https://en.wikipedia.org/wiki/List_of_names_of_European_cities_in_different_languages

    关于analysis - 从不同来源识别和关联城市,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32906099/

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