Как рассчитать расстояние между струнами с помощью спарклира?

Мне нужно рассчитать расстояние между двумя строками в R с помощью sparklyr. Есть ли способ использовать stringdist или любой другой пакет? Я хотел использовать кузинскую дистанцию. Это расстояние используется как метод функции stringdist.

Заранее спасибо.


person Daniel Limaviegas    schedule 02.03.2018    source источник
comment
Вы имеете в виду расстояние Хэмминга? Если да, то вы хотите использовать пакет stringdist.   -  person bk18    schedule 02.03.2018
comment
Я думал о расстоянии кузины, в любом случае мне действительно нужно использовать пакет stringdist, но, похоже, он не работает в sparklyr. Я ищу способ использовать его или замену этому пакету.   -  person Daniel Limaviegas    schedule 03.03.2018
comment
Можете ли вы воспроизвести попытку, которая не работает?   -  person bk18    schedule 03.03.2018


Ответы (1)


Вы можете использовать встроенную функцию levenshtein:

df <- copy_to(sc, data.frame(a=c("This is it", "Foo"), b=c("This is", "foobar)))

# df %>% mutate(dist = levenshtein(a, b))
# # Source:   lazy query [?? x 3]
# # Database: spark_connection
#   a          b        dist
#   <chr>      <chr>   <int>
# 1 This is it This is     3
# 2 Foo        foobar      4
person user8954262    schedule 08.03.2018
comment
Есть ли способ использовать не встроенную метрику расстояния строки с sparklyr? Например, Jaro-Winkler, доступный в этом пакете: github.com/MrPowers/spark-stringmetric . - person jfeigenbaum; 07.07.2019
comment
@jfeigenbaum вы нашли способ использовать не встроенную метрику расстояния строки? - person johnckane; 10.04.2020
comment
@johnckane Я не тратил на это много времени, но нет ... Я так и не понял этого - person jfeigenbaum; 11.04.2020
comment
@jfeigenbaum, если вам интересно, я ответил здесь, как я в конечном итоге сделал это в pyspark: stackoverflow.com/questions/57706352/ - person johnckane; 11.04.2020