问题标签 [agrep]

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.

0 投票
0 回答
119 浏览

r - 从单个列中识别模糊重复并使用 R 创建包含模糊重复记录的子集

我有一个数据集,其中包含一个带有个人姓名的字段。有些名称相似,但有细微差别,例如“CANON INDIA PVT”。LTD'和'佳能印度PVT。LTD.”、“Antila,Thomas”和“ANTILA THOMAS”、“Z_SANDSTONE COOLING LTD”和“SANDSTONE COOLING LTD”等。我需要识别这些模糊重复项并创建一个包含这些记录的新子集。我有一个巨大的表,其中包含这样的记录,所以,我只是制作一个样本。

我希望输出为:

我尝试使用 RecordLinkage 和 agrep,但它们将原始数据作为输出。

另一种方法是:

使用 agrep 将输出作为向量索引。但是,我想提取仅属于名称相似的所有记录?

0 投票
2 回答
264 浏览

bash - 如何修复错误 agrep:模式太长(具有 > 32 个字符)如果字符串中没有句号,它不会显示错误?

当模式字符串中有句点(。)时, agrep 会给出错误agrep: pattern too long (has > 32 chars),否则不会。

我想比较(大约)两个字符串,所以我为此使用 agrep 但它给出了一个错误agrep: pattern too long (has > 32 chars)。但是我发现如果模式字符串中没有句号,它不会给出错误(为什么?)

预期的输出是 1 而它给出了一个错误: agrep: pattern too long (has > 32 chars)

如果我删除句号,它会起作用:

0 投票
1 回答
112 浏览

r - 从 agrep 中提取子字符串匹配

我的目标是确定给定texttarget字符串中是否包含字符串,但我想允许拼写错误/小的派生并提取“导致”匹配的子字符串(以将其用于进一步的文本分析)。

例子:

期望的输出:

我想target strlng作为输出,因为它非常接近目标(levenshtein 距离为 1)。接下来我想用它target strlng来提取这个词Butter(这部分我已经介绍过,我只是添加它以获得详细的规范)。

我尝试了什么:

使用 adist 不起作用,因为它比较两个字符串,而不是子字符串。

接下来我看了一下agrep似乎很接近。我可以找到我的目标的输出,但不是substring“导致”匹配的输出。

我试过了,value = TRUE但它似乎在数组级别上工作。我认为我不可能切换到数组类型,因为我不能用空格分隔(我的目标字符串可能有空格,...)。

0 投票
1 回答
64 浏览

r - 识别同一行中的相似名称,然后选择模式

我的数据包括一个名称列。一些名称以多达八种不同的方式书写。我尝试使用以下代码对它们进行分组:

接下来,我想添加一个新列,该列返回例如最常用的每行名称表示法。结果应如下所示:

我如何到那里?

0 投票
1 回答
92 浏览

r - grep vs agrep 中的撇号和可选参数(?)

当我运行以下 4 行代码时,我没有从所有 4 行中得到相同的结果。为什么最后一行没有找到匹配项?

我还没有完整阅读模糊匹配函数,但从表面上看,我不明白为什么这会是一个问题。

0 投票
1 回答
306 浏览

r - R在向量中查找相互匹配的元素

我有一个地址列表。这些地址是由不同的用户输入的,因此写入相同地址的方式有很多差异。例如,

上述向量有 6 个地址。而且几乎所有的都是一样的。我正在尝试找到这些地址之间的匹配项,以便我可以将它们组合在一起并重新编码。

我试过使用agrep和 stringdist 包。使用 agrep 我不确定我是否应该将每个地址作为一个模式并将其与其余地址匹配。从 stringdist 包我做了以下事情:

以上给了我错误:

不确定我是否应该从字符向量中删除这些元素或将它们转换为其他格式。

用 agrep 我试过:

字符向量的长度约为 25000,它会继续运行并使机器停止运行。

如何有效地为每个地址找到最接近的匹配项。

0 投票
0 回答
32 浏览

r - 当字符串带有空格时,agrep 不起作用,用于字符串匹配

我有一条叫做“鱼饼”的绳子。我有一本合格的词典,其中包含“柠檬”和“鱼”。我希望 agrep 将鱼饼与符合条件的字典中的鱼串相匹配。但它不会起作用。它将鱼与鱼饼相配。

我希望它检测输入数据的拼写错误,并且我有一个符合条件的单词字典。我想建议合适的词是什么。所以如果我有 lmon 我想说,你的意思是“柠檬”吗?如果我有鱼饼,我想去,你是说鱼吗?

将返回索引 2,将其与鱼饼匹配

如果我做agrep("fish cakes", c("lemon", "fish"))

它什么也不返回,这意味着它不匹配。

有什么建议么?谢谢

0 投票
1 回答
55 浏览

r - 近似字符串匹配的逻辑是什么?

有谁知道以下示例的原因是什么:

0 投票
1 回答
93 浏览

r - R中字符串的模糊逻辑

我有 2 个数据框:DF1

并且,df2

我想在 DF1 字符串中应用模糊逻辑。如果 DF1 中给出的名称与 DF2 匹配,请给我 DF2 名称

输出应该像

我尝试应用 FuzzywuzzyR 但出现错误

我也尝试了 agrep,但它给我的结果是 True/False。

请帮我解决这个问题。另外,如果我应该尝试其他包模糊

0 投票
0 回答
18 浏览

r - 为什么我在 R 的 agrep 中翻转 pattern 中的字符串和 x 时没有得到相同的模糊匹配结果?

所以下面的命令给了我一个匹配:
agrep(pattern = 'Ned Stark', x = 'Ned Stark**DUPL ENTRY', max.distance = 0.15, costs = NULL, ignore.case = TRUE, value = FALSE, fixed = TRUE, useBytes = FALSE)
但是当我翻转两个字符串时,我不再得到匹配
agrep(pattern = 'Ned Stark**DUPL ENTRY', x = 'Ned Stark', max.distance = 0.15, costs = NULL, ignore.case = TRUE, value = FALSE, fixed = TRUE, useBytes = FALSE)