给定2个数据集,其中一个非常非结构化且噪声很大,另一个结构良好且完整 - 是否存在可用于将非结构化数据集中的行与其中的行匹配的软件工具,API或框架结构化数据集,既没有集合包含任何唯一标识符?可能会产生某种可信度得分,即行是匹配的。
这基本上是个问题,但如果感兴趣,可以在下面找到更多信息:
我有2个数据集。两者都包含用户信息,包含姓名,地址,联系方式以及有关用户的其他杂项信息。
数据集#1未格式化,无序,无限制,嘈杂(缺失值,非常规数据,即电话号码可能是+ XX(XX)XXX XXX,下一行的电话号码可能是XXXXXXXXXX)。唯一的便利是每个用户记录至少在它自己的行上。
数据集#2在大约80个单独的数据集中进行了扩充,但是每个数据集虽然彼此不一致,但格式良好且数据描述得很清楚,这意味着我可以将这些数据集标准化为1个逻辑数据集 - 出于此问题的目的,考虑这一套。
数据集#1中的每条记录都包含在数据集#2中 - 问题是没有唯一标识符,数据集#1有噪音且非结构化。
答案 0 :(得分:0)
到目前为止还没有答案,所以我会提供自从问这个以来我做过的研究结果。这类问题所属的字段是Record Linkage http://en.wikipedia.org/wiki/Record_linkage,它匹配2个数据集之间的记录,其中记录之间没有共享唯一ID。
我为Record Linkage找到了这个软件http://fril.sourceforge.net/,它将一系列距离度量标准纳入其链接算法,以便在左右两侧匹配时可以设置置信度和接受度,例如q -gram distance可用于匹配不同格式的存储名称,因为“q-gram”(给定字符串的子集)的顺序无关紧要,因此“John Doe”和“Doe,John”将给出高分。 Soundex算法也可用于克服名称字段中的常见拼写错误,即“John Doe”和“Jon Doe”。对于其他类型的数据,可以使用编辑距离或其他距离度量。
根据每个距离度量的结果,计算置信度,并且如果置信水平等于或高于设定的接受水平,则进行匹配。
这个领域和软件可能会克服存储数据格式差异的问题,我可能不得不做更多的工作,构建上面提到的数据集#1,然后才能将它提供给这种系统。< / p>