【发布时间】:2017-03-16 08:12:19
【问题描述】:
我正在尝试比较两个数组之间的编辑距离。我尝试过使用 Text:Levenshtein。
#!/usr/bin/perl -w
use strict;
use Text::Levenshtein qw(distance);
my @words = qw(four foo bar);
my @list = qw(foo fear);
my @distances = distance(@list, @words);
print "@distances\n";
#results: 3 2 0 3
然而,我希望结果如下所示:
2 0 3
2 3 2
通过@words 数组获取@list 的第一个元素,并通过@list 的其余元素执行相同的操作。 我计划将其升级为更大的阵列。
【问题讨论】:
-
在您的示例中,
distance(@list, @words)等价于distance('foo', 'fear', 'four', 'foo', 'bar'),它计算“foo”和“fear”、“foo”和“four”、“foo”和“foo”之间的编辑距离"、"foo" 和 "bar"。 -
有道理,谢谢。
标签: arrays perl bioinformatics levenshtein-distance edit-distance