ISO 3166 Country Codes ITU Dialing Codes ISO 4217 Currency Codes


Files Size Format Created Updated License Source
2 344kB csv zip 3 months ago John Snow Labs Standard License John Snow Labs International Organization for Standardization (ISO), United Nations Statistics Division, International Telecommunications Union (ITU), Unicode Common Locale Data Repository (CLDR), Statoids, Geonames, US Securities and Exchange Commission

Data Files

File Description Size Last changed Download
iso-3166-country-codes-itu-dialing-codes-iso-4217-currency-codes-csv 35kB csv (35kB) , json (151kB)
iso-3166-country-codes-itu-dialing-codes-iso-4217-currency-codes_zip Compressed versions of dataset. Includes normalized CSV and JSON data with original data and datapackage.json. 66kB zip (66kB)


This is a preview version. There might be more data in the original version.

Field information

Field Name Order Type (Format) Description
Country_Name 1 string Refers to the full name of country.
Official_Name_English 2 string Indicates the Country's official English name.
ISO3166_1_Alpha_2 3 string Refers to Alpha-2 (two letter) codes from ISO 3166-1.
ISO3166_1_Alpha_3 4 string Refers to Alpha-3 (three letter) codes from ISO 3166-1. These codes are synonymous with World Bank Codes.
M49 5 integer Indicates United Nations Statistics Division M49 numeric codes (nearly synonymous with ISO 3166-1 numeric codes, which are based on UN M49. ISO 3166-1 does not include Channel Islands or Sark). These are also prepared by the United Nations Secretariat primarily for use in its publications and databases.
ITU 6 string Indicates the codes assigned by the International Telecommunications Union (ITU).
MARC 7 string Refers to the MAchine-Readable Cataloging (MARC) codes from the Library of Congress. It is a standard for encoding bibliographic materials in electronic form. In general, MARC country codes are two letters. For three countries, MARC provides three-letter subdivision codes. In these cases, the first two letters represent the state or province, and the third letter indicates the country. If the first two letters are xx, the code represents a location in an unspecified subdivision of that country. There are five MARC codes that represent parts of United States Minor Outlying Islands: ji Johnston Atoll, xf Midway Islands, wk Wake Island, uc United States Misc. Caribbean Islands, and up United States Misc. Pacific Islands.
WMO 8 string Specifies the Country abbreviations by the World Meteorological Organization (WMO) used in weather reports.
DS 9 string Indicates the Distinguishing Signs (DS) of the place of registration of vehicles in international traffic.
Dial 10 string Country code from International Telecommunication Union - Telecommunication Standardization Sector (ITU-T) recommendation E.164, sometimes followed by area code.
FIFA 11 string Refers to the codes assigned by the Fédération Internationale de Football Association (FIFA).
FIPS 12 string Indicates the codes from the U.S. Federal Information Processing Standard Publication (FIPS PUB) 10-4.
GAUL 13 string Specifies the Global Administrative Unit Layers (GAUL) from the Food and Agriculture Organization.
IOC 14 string Refers to the codes assigned by the International Olympics Committee (IOC).
ISO4217_Currency_Alphabetic_Code 15 string Represents a three-letter alphabetic code for currency. The alphabetic code is based on another ISO standard, ISO 3166, which lists the codes for country names. The first two letters of the ISO 4217 three-letter code are the same as the code for the country name, and where possible the third letter corresponds to the first letter of the currency name. For example: the US dollar is represented as USD - the US coming from the ISO 3166 country code and the D for dollar. The Swiss franc is represented by CHF - the CH being the code for Switzerland in the ISO 3166 code and F for franc.
ISO4217_Currency_Country_Name 16 string Refers to the name of the country against their ISO 4217 currency alphabetical code.
ISO4217_Currency_Minor_Unit 17 integer Indicates the ISO 4217 currency number of minor units.
ISO4217_Currency_Name 18 string Represents the name of currency as per ISO 4217.
ISO4217_Currency_Numeric_Code 19 integer Refers to the three-digit numeric code is useful when currency codes need to be understood in countries that do not use Latin scripts and for computerised systems. Where possible the 3 digit numeric code is the same as the numeric country code.
Is_Independent 20 string Indicates the Country status, based on the Central Intelligence Agency (CIA) World Factbook.
Capital 21 string Represents the Capital city of the specific ountry from Geonames.
Continent 22 string Refers to the Continent in which specific countries are located from Geonames.
TLD 23 string Indicates the Top Level Domain (TLD) from Geonames.
Languages 24 string This column lists the languages spoken in a country ordered by the number of speakers. The language code is a 'locale' where any two-letter primary-tag is an ISO-639 language abbreviation and any two-letter initial subtag is an ISO-3166 country code.
Geo_Name_ID 25 string Represents the identity of a country's Geographic Name.
EDGAR 26 string Refers to the Electronic Data Gathering, Analysis, and Retrieval system (EDGAR) that performs automated collection, validation, indexing, acceptance, and forwarding of submissions by companies and others who are required by law to file forms with the U.S. Securities and Exchange Commission (the "SEC").

Import into your tool

Data-cli or just data is the program to get and post your data with the datahub.
Use data with the almost like you use git with the github. Here are installation instructions.

data get
tree JohnSnowLabs/iso-3166-country-codes-itu-dialing-codes-iso-4217-currency-codes
# Get a list of dataset's resources
curl -L -s | grep path

# Get resources

curl -L

curl -L

If you are using R here's how to get the data you want quickly loaded:

install.packages("jsonlite", repos="")

json_file <- ''
json_data <- fromJSON(paste(readLines(json_file), collapse=""))

# get list of all resources:

# print all tabular data(if exists any)
for(i in 1:length(json_data$resources$datahub$type)){
    path_to_file = json_data$resources$path[i]
    data <- read.csv(url(path_to_file))

Note: You might need to run the script with root permissions if you are running on Linux machine

Install the Frictionless Data data package library and the pandas itself:

pip install datapackage
pip install pandas

Now you can use the datapackage in the Pandas:

import datapackage
import pandas as pd

data_url = ''

# to load Data Package into storage
package = datapackage.Package(data_url)

# to load only tabular data
resources = package.resources
for resource in resources:
    if resource.tabular:
        data = pd.read_csv(resource.descriptor['path'])
        print (data)

For Python, first install the `datapackage` library (all the datasets on DataHub are Data Packages):

pip install datapackage

To get Data Package into your Python environment, run following code:

from datapackage import Package

package = Package('')

# print list of all resources:

# print processed tabular data (if exists any)
for resource in package.resources:
    if resource.descriptor['datahub']['type'] == 'derived/csv':

If you are using JavaScript, please, follow instructions below:

Install data.js module using npm:

  $ npm install data.js

Once the package is installed, use the following code snippet:

const {Dataset} = require('data.js')

const path = ''

// We're using self-invoking function here as we want to use async-await syntax:
;(async () => {
  const dataset = await Dataset.load(path)
  // get list of all resources:
  for (const id in dataset.resources) {
  // get all tabular data(if exists any)
  for (const id in dataset.resources) {
    if (dataset.resources[id]._descriptor.format === "csv") {
      const file = dataset.resources[id]
      // Get a raw stream
      const stream = await
      // entire file as a buffer (be careful with large files!)
      const buffer = await file.buffer
      // print data