BIS Selected property prices unlisted

core

Files Size Format Created Updated License Source
5 696kB csv zip 3 months ago BIS Selected property prices
Residential property price statistics from different countries. Contains property price indicators (real series are the nominal price series deflated by the consumer price index), both in levels and in growth rates. Can be used for property market analysis. Data This data comes from Bank For read more
Download

Data Files

File Description Size Last changed Download
nominal_index 301kB csv (301kB) , json (772kB)
nominal_year 296kB csv (296kB) , json (768kB)
real_index 301kB csv (301kB) , json (773kB)
real_year 296kB csv (296kB) , json (768kB)
residential-property-price-statistics-from-different-countries_zip Compressed versions of dataset. Includes normalized CSV and JSON data with original data and datapackage.json. 651kB zip (651kB)

nominal_index  

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

Field information

Field Name Order Type (Format) Description
date 1 date (%Y-%m-%d)
country 2 string (default)
price 3 string (default)

nominal_year  

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

Field information

Field Name Order Type (Format) Description
date 1 date (%Y-%m-%d)
country 2 string (default)
price 3 string (default)

real_index  

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

Field information

Field Name Order Type (Format) Description
date 1 date (%Y-%m-%d)
country 2 string (default)
price 3 string (default)

real_year  

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

Field information

Field Name Order Type (Format) Description
date 1 date (%Y-%m-%d)
country 2 string (default)
price 3 string (default)

Read me

Residential property price statistics from different countries. Contains property price indicators (real series are the nominal price series deflated by the consumer price index), both in levels and in growth rates. Can be used for property market analysis.

Data

This data comes from Bank For International Settlements BIS. There are several series of data on the BIS site:

  • detailed data set. Format: xlsx
  • [source of this repo] selected series (nominal and real). Format: xlsx, csv.
  • long series. Formats: xlsx, csv
  • Commercial property price series. Format: xlsx

Here we use Selected series set, reasons are:

Data format

Output is four files with different metrics:

  • data/nominal_index.csv Nominal Index, 2010 = 100
  • data/nominal_year.csv Nominal Year-on-year changes, in per cent
  • data/real_index.csv Real Index, 2010 = 100
  • data/real_year.csv Real Year-on-year changes, in per cent

Each file structure is like this:

date,country,price
2012-06-30,Philippines,114.5
2012-06-30,Poland,97.36
2012-06-30,Portugal,88.15
2012-06-30,Romania,84.61
2012-06-30,Serbia,96.48
2012-06-30,Russia,89.81
2012-06-30,Sweden,103.47

Detailed Data Description:

Contains data for 59 countries at a quarterly frequency (real series are the nominal price series deflated by the consumer price index), both in levels and in growth rates (ie four series per country). These indicators have been selected from the detailed data set to facilitate access for users and enhance comparability. The BIS has made the selection based on the Handbook on Residential Property Prices and the experience and metadata of central banks. An analysis based on these selected indicators is also released on a quarterly basis, with a particular focus on longer-term developments in the May release.

Preparation

You will need python and pip installed to run the data downloading and processing script.

# if you don't have "git" you can download and unzip the datapackage directly from this page.
git clone https://github.com/datasets/global-house-prices.git

cd global-house-prices
pip install tabulator
python scripts/process.py

license

Sources: National sources, BIS Residential Property Price database, www.bis.org/statistics/pp.htm.

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 datahub.io almost like you use git with the github. Here are installation instructions.

data get https://datahub.io/core/residential-property-price-statistics-from-different-countries
tree core/residential-property-price-statistics-from-different-countries
# Get a list of dataset's resources
curl -L -s https://datahub.io/core/residential-property-price-statistics-from-different-countries/datapackage.json | grep path

# Get resources

curl -L https://datahub.io/core/residential-property-price-statistics-from-different-countries/r/0.csv

curl -L https://datahub.io/core/residential-property-price-statistics-from-different-countries/r/1.csv

curl -L https://datahub.io/core/residential-property-price-statistics-from-different-countries/r/2.csv

curl -L https://datahub.io/core/residential-property-price-statistics-from-different-countries/r/3.csv

curl -L https://datahub.io/core/residential-property-price-statistics-from-different-countries/r/4.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/residential-property-price-statistics-from-different-countries/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/residential-property-price-statistics-from-different-countries/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/residential-property-price-statistics-from-different-countries/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/residential-property-price-statistics-from-different-countries/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)
    }
  }
})()
Datapackage.json