String similarity ratio

lev_ratio(a, b, pairwise = TRUE, useNames = TRUE, ...)

Arguments

a, b

The input strings

pairwise

Boolean. If TRUE, only the pairwise distances between a and b will be computed, rather than the combinations of all elements.

useNames

Boolean. Use input vectors as row and column names?

...

Additional arguments to be passed to stringdist::stringdistmatrix() or stringdist::stringsimmatrix().

Value

A numeric scalar, vector or matrix depending on the length of the inputs.

Details

This is a thin wrapper around stringdist::stringsimmatrix() and mainly exists to coerce the output into the simplest possible format (via lev_simplify_matrix()).

The function will return the simplest possible data structure permitted by the length of the inputs a and b. This will be a scalar if a and b are length 1, a vector if either (but not both) is length > 1, and a matrix otherwise.

Examples

lev_ratio("Bilbo", "Frodo")
#> [1] 0.2

lev_ratio("Bilbo", c("Frodo", "Merry"))
#> Frodo Merry 
#>   0.2   0.0 

lev_ratio("Bilbo", c("Frodo", "Merry"), useNames = FALSE)
#> [1] 0.2 0.0

lev_ratio(c("Bilbo", "Gandalf"), c("Frodo", "Merry"))
#> [1] 0.2 0.0