Now you can request additional data and/or customized columns!

Try It Now!

UN-LOCODE Codelist

Certified

core

Files Size Format Created Updated License Source
6 46MB csv zip 1 year ago 4 months ago UNECE
The United Nations Code for Trade and Transport Locations is a code list mantained by UNECE, United Nations agency, to facilitate trade. Data Data comes from the UNECE page, released at least once a year. The files released in this package are extracted from the mdb archive to preserve UTF-8 read more
Download Developers

Data Files

Download files in this dataset

File Description Size Last changed Download
code-list 7MB csv (7MB) , json (26MB)
country-codes 4kB csv (4kB) , json (13kB)
function-classifiers 300B csv (300B) , json (711B)
status-indicators 827B csv (827B) , json (1kB)
subdivision-codes 88kB csv (88kB) , json (287kB)
un-locode_zip Compressed versions of dataset. Includes normalized CSV and JSON data with original data and datapackage.json. 6MB zip (6MB)

code-list  

Signup to Premium Service for additional or customised data - Get Started

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

Field information

Field Name Order Type (Format) Description
Change 1 string + (newly added); X (to be removed); | (changed); # (name changed); = (reference entry); ! (US location with duplicate IATA code)
Country 2 string ISO 3166 alpha-2 Country Code, defined in countryCodes.csv
Location 3 string
Name 4 string
NameWoDiacritics 5 string
Subdivision 6 string Defined in subdivisionCodes.csv
Status 7 string Defined in statusIndicators.csv
Function 8 string Defined in functionClassifiers.csv
Date 9 string ym
IATA 10 string IATA code if different from LOCODE
Coordinates 11 string DDMM[N/S] DDDMM[W/E]
Remarks 12 string

country-codes  

Signup to Premium Service for additional or customised data - Get Started

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

Field information

Field Name Order Type (Format) Description
CountryCode 1 string
CountryName 2 string

function-classifiers  

Signup to Premium Service for additional or customised data - Get Started

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

Field information

Field Name Order Type (Format) Description
FunctionCode 1 string
FunctionDescription 2 string

status-indicators  

Signup to Premium Service for additional or customised data - Get Started

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

Field information

Field Name Order Type (Format) Description
STStatus 1 string
STDescription 2 string

subdivision-codes  

Signup to Premium Service for additional or customised data - Get Started

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

Field information

Field Name Order Type (Format) Description
SUCountry 1 string
SUCode 2 string
SUName 3 string

Similar Datasets

Country list

core


CSV,JSON


View ›

Country codes

core


CSV,JSON


View ›

Airport codes

core


CSV,JSON


View ›

Language codes

core


CSV,JSON


View ›

Integrate this dataset into your favourite tool

Use our data-cli tool designed for data wranglers:

data get https://datahub.io/core/un-locode
data info core/un-locode
tree core/un-locode
# Get a list of dataset's resources
curl -L -s https://datahub.io/core/un-locode/datapackage.json | grep path

# Get resources

curl -L https://datahub.io/core/un-locode/r/0.csv

curl -L https://datahub.io/core/un-locode/r/1.csv

curl -L https://datahub.io/core/un-locode/r/2.csv

curl -L https://datahub.io/core/un-locode/r/3.csv

curl -L https://datahub.io/core/un-locode/r/4.csv

curl -L https://datahub.io/core/un-locode/r/5.zip

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

install.packages("jsonlite", repos="https://cran.rstudio.com/")
library("jsonlite")

json_file <- 'https://datahub.io/core/un-locode/datapackage.json'
json_data <- fromJSON(paste(readLines(json_file), collapse=""))

# get list of all resources:
print(json_data$resources$name)

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

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 = 'https://datahub.io/core/un-locode/datapackage.json'

# 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('https://datahub.io/core/un-locode/datapackage.json')

# print list of all resources:
print(package.resource_names)

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

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 = 'https://datahub.io/core/un-locode/datapackage.json'

// 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) {
    console.log(dataset.resources[id]._descriptor.name)
  }
  // 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 file.stream()
      // entire file as a buffer (be careful with large files!)
      const buffer = await file.buffer
      // print data
      stream.pipe(process.stdout)
    }
  }
})()

Read me

The United Nations Code for Trade and Transport Locations is a code list mantained by UNECE, United Nations agency, to facilitate trade.

Data

Data comes from the UNECE page, released at least once a year. The files released in this package are extracted from the mdb archive to preserve UTF-8 encoding.

License

All data is licensed under the ODC Public Domain Dedication and Licence (PDDL).


Keywords and keyphrases: unlocode, un locode, UN-LOCODE Codelist, United Nations Code for Trade and Transport Locations, locode.
Datapackage.json

Request Customized Data


Notifications of data updates and schema changes

Warranty / guaranteed updates

Workflow integration (e.g. Python packages, NPM packages)

Customized data (e.g. you need different or additional data)

Or suggest your own feature from the link below