Learn R Programming

phonics (version 1.4.0)

onca: Oxford Name Compression Algorithm

Description

The Oxford Name Compression Algorithm name coding procedure

Usage

onca(word, maxCodeLen = 4, clean = TRUE, modified = FALSE, refined = FALSE)

Value

the ONCA encoded character vector

Arguments

word

string or vector of strings to encode

maxCodeLen

maximum length of the resulting encodings, in characters

clean

if TRUE, return NA for unknown alphabetical characters

modified

if TRUE, use the modified nysiis function

refined

if TRUE, use the refinedSoundex function

Details

ONCA applies NYSIIS and then Soundex. Gill describes the first stage as an "anglicised" NYSIIS but does not publish its complete rule set; this implementation uses the documented standard NYSIIS scan. The modified and refined combinations are package extensions. maxCodeLen bounds the final code and defaults to 4.

The onca algorithm is only defined for inputs over the standard English alphabet, i.e., "A-Z.". Non-alphabetical characters are removed from the string in a locale-dependent fashion. This strips spaces, hyphens, and numbers. Other letters, such as "Ü," may be permissible in the current locale but are unknown to onca. For inputs outside of its known range, the output is undefined and NA is returned and a warning is issued. If clean is FALSE, onca attempts to process the strings. The default is TRUE.

References

Gill, L. E. (1997). "OX-LINK: The Oxford Medical Record Linkage System." In Record Linkage Techniques---1997, p. 15--33.

James P. Howard, II, "Phonetic Spelling Algorithm Implementations for R," Journal of Statistical Software, vol. 95, no. 8, (2020), p. 1--21, <10.18637/jss.v095.i08>.

See Also

Other phonics: caverphone(), cologne(), lein(), metaphone(), mra_encode(), nysiis(), phonex(), phonics(), rogerroot(), soundex(), statcan()

Examples

Run this code
onca("William")
onca(c("Peter", "Peady"))
onca("Stevenson", maxCodeLen = 8)

Run the code above in your browser using DataLab