Matchcode Optimization:Dice's Coefficient
Dice’s Coefficient
Specifics
Summary
- Like Jaro, Dice counts matching n-Grams (discarding duplicate NGRAMs).
Returns
- Percentage of similarity
- 2 * (commonDiceGrams) / (dicegrams1 + dicegrams2)
- NGRAM is defined as the length of common strings this algorithm looks for. Matchup’s default is NGRAM = 2. For “ABCD” vs “GABCE”, Matching NGRAMS would be “AB” and “BC”.
- dicegramsX is defined as the number of unique NGRAMS found in stringX.
- commonDiceGrams is defined as the number of common NGRAMS between the two strings.
Example Matchcode Component
Example Data
STRING1 STRING2 RESULT Johnson Jhnsn Unique Maguire Mcguire Match Found Beaumarchais Bumarchay Unique Apco Oil Lube 170 Apco Oil Lube 342 Match Found
Performance | |||||
---|---|---|---|---|---|
Slower | Faster | ||||
Matches | |||||
More Matches | Greater Accuracy |
Recommended Usage
- Hybrid deduper, where a single incoming record can quickly be evaluated independently against each record in an existing large master database. Databases created with abbreviations or similar word substitutions.
Not Recommended For
- Large or Enterprise level batch runs. Since the algorithm must be evaluated for each record comparison, throughput will be very slow.
- Databases created via real-time data entry where audio likeness errors are introduced.
Do Not Use With
- UTF-8 data. This algorithm was ported to MatchUp with the assumption that a character equals one byte, and therefore results may not be accurate if the data contains multi-byte characters.