Converts long country names in any language to one of many different country code schemes or country names. countryname does 2 passes on the data. First, it tries to detect variations of country names in many languages extracted from the Unicode Common Locale Data Repository. Second, it applies countrycode's English regexes to try to match the remaining cases. Because it does two passes, countryname can sometimes produce ambiguous results, e.g., Saint Martin vs. Saint Martin (French Part). Users who need a "safer" option can use: countrycode(x, "", "") Note that the function works with non-ASCII characters. Please see the Github page for examples.

countryname(sourcevar, destination = "cldr.short.en", warn = TRUE)



Vector which contains the codes or country names to be converted (character or factor)


Coding scheme of destination (string such as "iso3c" enclosed in quotes ""): type ?codelist for a list of available codes.


Prints unique elements from sourcevar for which no match was found


if (FALSE) {
x <- c('Afaganisitani', 'Barbadas', 'Sverige', 'UK')
countryname(x, destination = 'iso3c')