Сохранение заголовков на расстоянии редактирования

Я запускаю расстояние редактирования, используя 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

person El David    schedule 23.12.2016    source источник


Ответы (2)


Есть параметр useNames, который вы можете указать:

stringdistmatrix(a, useNames = TRUE)

#     foo bar bear
#bar    3         
#bear   4   1     
#boat   3   2    2
person Psidom    schedule 23.12.2016

Вероятно, вы хотите 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

Вы также можете использовать adist из base R для получения матрицы расстояний (с обобщенным расстоянием Левенштейна) следующим образом:

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
person Sandipan Dey    schedule 23.12.2016