# Akin

Functions for comparing two strings for similarity using a collection of string comparison algorithms for Elixir. Algorithms can be called independently or in total to return a map of metrics.

Function to calculate the Bag Distance between two strings

Struct to hold the multi-form elements which results from normalizing, splitting, and stemming the string prior to comparison with another string: MapSet, List, String, and Stemmed List.

Compares two values phonetically and returns a boolean of whether they match using the level in opts. Match calculated using the Double Metaphone Phonetic Algorithm.

Functions to calculate the Hamming Distance between 2 given strings. The Hamming Distance is the the smallest number of substitutions needed to change one string into the other string.

Functions to compare strings of different lengths.

Function specific to the comparison and matching of names. Returns matching names and metrics.

Functions to calculate the Jaccard similarity between two strings

Calculates the Jaro-Winkler Distance between two strings.

Compare two strings for their Levenshtein score.

Calculates the Metaphone Phonetic Algorithm metric of two strings.

The original Metaphone algorithm was published in 1990 as an improvement over the Soundex algorithm. Like Soundex, it was limited to English-only use. The Metaphone algorithm does not produce phonetic representations of an input word or name; rather, the output is an intentionally approximate phonetic representation. The approximate encoding is necessary to account for the way speakers vary their pronunciations and misspell or otherwise vary words and names they are trying to spell.

Calculates the Metaphone Phonetic Algorithm of a string.

Function specific to the comparison and matching of names. Returns matching names and metrics.

Functions to calculate the ngram distance between two given strings based on this paper

Implements the Overlap Similarity Metric.

Functions to calculate the Sorensen-Dice coefficient of two strings.

Determine whether all comparison functions should use the simple ratio function or the substring ratio function.

Tokenize the search terms into lists split by white space and compare the cartesian product of the lists.

Functions for string comparsion where common words between the strings are compared in sets.

Use Chunk Sorting to compare two strings using substrings.

API for all string comparison modules.

Functions to calculate the Tversky index between two strings.

Utilities for string preparation, manipulation, comparison, and inspection.