保持 headers 的编辑距离
Maintaining headers in edit distance
我正在 运行 使用 stringdist
编辑距离。输出将输入替换为编号列表,而不是被比较的实际字符串。这是我目前拥有的:
library(stringdist)
a <- c("foo", "bar", "bear", "boat", method = "lv")
stringdistmatrix(a)
1 2 3
2 3
3 4 1
4 3 2 2
我希望输出如下所示,这样我就可以看到编辑距离的来源。
foo bar bear
bar 3
bear 4 1
boat 3 2 2
有useNames
参数可以指定:
stringdistmatrix(a, useNames = TRUE)
# foo bar bear
#bar 3
#bear 4 1
#boat 3 2 2
可能您希望 method = 'lv'
作为函数的参数:
library(stringdist)
a <- c("foo", "bar", "bear", "boat")
stringdistmatrix(a, method = "lv", useNames = TRUE)
# foo bar bear
#bar 3
#bear 4 1
#boat 3 2 2
您也可以使用 base R
中的 adist
来获得距离矩阵(使用 广义 Levenshtein 距离 ),如下所示:
matrix(adist(c("foo", "bar", "bear", "boat")), nrow=length(a), dimnames=list(a, a))
# foo bar bear boat
#foo 0 3 4 3
#bar 3 0 1 2
#bear 4 1 0 2
#boat 3 2 2 0
或下三角距离
as.dist(matrix(adist(c("foo", "bar", "bear", "boat")),
nrow=length(a), dimnames=list(a, a)))
# foo bar bear
#bar 3
#bear 4 1
#boat 3 2 2
我正在 运行 使用 stringdist
编辑距离。输出将输入替换为编号列表,而不是被比较的实际字符串。这是我目前拥有的:
library(stringdist)
a <- c("foo", "bar", "bear", "boat", method = "lv")
stringdistmatrix(a)
1 2 3
2 3
3 4 1
4 3 2 2
我希望输出如下所示,这样我就可以看到编辑距离的来源。
foo bar bear
bar 3
bear 4 1
boat 3 2 2
有useNames
参数可以指定:
stringdistmatrix(a, useNames = TRUE)
# foo bar bear
#bar 3
#bear 4 1
#boat 3 2 2
可能您希望 method = 'lv'
作为函数的参数:
library(stringdist)
a <- c("foo", "bar", "bear", "boat")
stringdistmatrix(a, method = "lv", useNames = TRUE)
# foo bar bear
#bar 3
#bear 4 1
#boat 3 2 2
您也可以使用 base R
中的 adist
来获得距离矩阵(使用 广义 Levenshtein 距离 ),如下所示:
matrix(adist(c("foo", "bar", "bear", "boat")), nrow=length(a), dimnames=list(a, a))
# foo bar bear boat
#foo 0 3 4 3
#bar 3 0 1 2
#bear 4 1 0 2
#boat 3 2 2 0
或下三角距离
as.dist(matrix(adist(c("foo", "bar", "bear", "boat")),
nrow=length(a), dimnames=list(a, a)))
# foo bar bear
#bar 3
#bear 4 1
#boat 3 2 2