String Matcher

The String Matcher node is able to compare two lists of strings, compute the distance between these strings and list the most similar strings in the output table. The node requires two input data tables. A data table containing the strings to compare and a data table containing a dictionary. The String Matcher finds for each element of the data table the most similar words in the dictionary table. To compare the elements the levenshtein-damerau-distance is used. This function calculates how many insertions, deletions, changing and swappings are at least necessary to change one word into another. To find an optimal solution it is necessary that the weight of two switches is greater or equal than the weight of an insert and a deletion.

Options

Search string column
Specify the desired column of the Data Table
Dictionary column
Specify the desired column of the Dictionary Table
Maximal number of related words
Specify the maximal number of related words
Process in memory
Process in memory will be faster, but it needs more memory.
Cost for deletion
The cost for deleting one character of the word
Cost for insertion
The cost for inserting one character into the word
Cost for changing
The cost for changing one character into another
Cost for switching
The cost for switching two characters of a word (aabca => aacba)

Input Ports

Icon
The data table containing the column with the words to search for in the dictionary table
Icon
The data table, containing the column with the dictionary strings.

Output Ports

Icon
The data table, with the original strings in the first column, if specified the minimal distance in the second column, the most related words (all with the same distance to the origin) are listed in the third column.

Views

This node has no views

Workflows

Links

Developers

You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.