phonetic: Phonetic algorithms

View source: R/phonetic.R

phoneticR Documentation

Phonetic algorithms


Translate strings to phonetic codes. Similar sounding strings should get similar or equal codes.


phonetic(x, method = c("soundex"), useBytes = FALSE)



a character vector whose elements are phonetically encoded.


name of the algorithm used. The default is "soundex".


Perform byte-wise comparison. useBytes=TRUE is faster but may yield different results depending on character encoding. For more information see the documentation of stringdist.


Currently, only the soundex algorithm is implemented. Note that soundex coding is only meaningful for characters in the ranges a-z and A-Z. Soundex coding of strings containing non-printable ascii or non-ascii characters may be system-dependent and should not be trusted. If non-ascii or non-printable ascii charcters are encountered, a warning is emitted.


The returns value depends on the method used. However, all currently implemented methods return a character vector of the same length of the input vector. Output characters are in the system's native encoding.


  • The Soundex algorithm implemented is the algorithm used by the National Archives. This algorithm differs slightly from the original algorithm patented by R.C. Russell (US patents 1261167 (1918) and 1435663 (1922)).

See Also

printable_ascii, stringdist-package


# The following examples are from The Art of Computer Programming (part III, p. 395)
# (Note that our algorithm is specified different from the one in TACP, see references.)

stringdist documentation built on Nov. 10, 2022, 5:08 p.m.