{ "cells": [ { "cell_type": "markdown", "id": "0", "metadata": {}, "source": [ "# Compute climate indicators on weather station data from ECCC's API\n", "\n", "Environment and Climate Change Canada (ECCC) offers an [API](https://api.weather.gc.ca/collections/climate-daily) to access daily weather station data. This notebook focus is on converting the JSON response from the server to an `xarray.Dataset`. At that point, it's then easy to compute numerous climate indicators on the daily time series using [xclim](http://xclim.readthedocs.io/)." ] }, { "cell_type": "code", "execution_count": 1, "id": "1", "metadata": { "pycharm": { "is_executing": true }, "tags": [] }, "outputs": [ { "data": { "text/html": [ "
\n", " | id | \n", "LOCAL_MONTH | \n", "LOCAL_DATE | \n", "MIN_TEMPERATURE | \n", "MIN_REL_HUMIDITY | \n", "LOCAL_DAY | \n", "SNOW_ON_GROUND_FLAG | \n", "MEAN_TEMPERATURE_FLAG | \n", "DIRECTION_MAX_GUST | \n", "CLIMATE_IDENTIFIER | \n", "... | \n", "HEATING_DEGREE_DAYS | \n", "LOCAL_YEAR | \n", "TOTAL_RAIN | \n", "MAX_REL_HUMIDITY_FLAG | \n", "PROVINCE_CODE | \n", "SNOW_ON_GROUND | \n", "TOTAL_RAIN_FLAG | \n", "MAX_TEMPERATURE | \n", "MAX_REL_HUMIDITY | \n", "geometry | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "7024745.1994.7.26 | \n", "7 | \n", "1994-07-26 | \n", "17.3 | \n", "NaN | \n", "26 | \n", "None | \n", "None | \n", "0.0 | \n", "7024745 | \n", "... | \n", "0.0 | \n", "1994 | \n", "None | \n", "None | \n", "QC | \n", "None | \n", "M | \n", "26.7 | \n", "NaN | \n", "POINT (-73.57917 45.50474) | \n", "
1 | \n", "7024745.1994.7.27 | \n", "7 | \n", "1994-07-27 | \n", "15.6 | \n", "NaN | \n", "27 | \n", "None | \n", "None | \n", "0.0 | \n", "7024745 | \n", "... | \n", "0.0 | \n", "1994 | \n", "None | \n", "None | \n", "QC | \n", "None | \n", "M | \n", "23.5 | \n", "NaN | \n", "POINT (-73.57917 45.50474) | \n", "
2 | \n", "7024745.1994.7.28 | \n", "7 | \n", "1994-07-28 | \n", "17.0 | \n", "NaN | \n", "28 | \n", "None | \n", "None | \n", "0.0 | \n", "7024745 | \n", "... | \n", "0.0 | \n", "1994 | \n", "None | \n", "None | \n", "QC | \n", "None | \n", "M | \n", "21.2 | \n", "NaN | \n", "POINT (-73.57917 45.50474) | \n", "
3 | \n", "7024745.1994.7.29 | \n", "7 | \n", "1994-07-29 | \n", "16.4 | \n", "NaN | \n", "29 | \n", "None | \n", "None | \n", "0.0 | \n", "7024745 | \n", "... | \n", "0.0 | \n", "1994 | \n", "None | \n", "None | \n", "QC | \n", "None | \n", "M | \n", "27.0 | \n", "NaN | \n", "POINT (-73.57917 45.50474) | \n", "
4 | \n", "7024745.1994.7.30 | \n", "7 | \n", "1994-07-30 | \n", "18.0 | \n", "NaN | \n", "30 | \n", "None | \n", "None | \n", "0.0 | \n", "7024745 | \n", "... | \n", "0.0 | \n", "1994 | \n", "None | \n", "None | \n", "QC | \n", "None | \n", "M | \n", "23.7 | \n", "NaN | \n", "POINT (-73.57917 45.50474) | \n", "
5 rows × 36 columns
\n", "<xarray.Dataset>\n", "Dimensions: (station: 1, time: 1061)\n", "Coordinates:\n", " * station (station) int64 0\n", " * time (time) datetime64[ns] 1994-07-26 ... 1997-06-20\n", " lon (station) float64 -73.58\n", " lat (station) float64 45.5\n", "Data variables: (12/18)\n", " id (station, time) object '7024745.1994.7.26' ... '7024...\n", " MIN_TEMPERATURE (station, time) float64 17.3 15.6 17.0 ... 15.7 15.6\n", " MIN_REL_HUMIDITY (station, time) float64 nan nan nan ... 78.0 38.0 35.0\n", " DIRECTION_MAX_GUST (station, time) float64 0.0 0.0 0.0 0.0 ... 0.0 0.0 0.0\n", " CLIMATE_IDENTIFIER (station) object '7024745'\n", " STATION_NAME (station) object 'MCTAVISH'\n", " ... ...\n", " HEATING_DEGREE_DAYS (station, time) float64 0.0 0.0 0.0 0.0 ... 0.8 0.0 0.0\n", " TOTAL_RAIN (station, time) object nan nan nan nan ... nan nan nan\n", " PROVINCE_CODE (station) object 'QC'\n", " SNOW_ON_GROUND (station, time) object None None None ... None None\n", " MAX_TEMPERATURE (station, time) float64 26.7 23.5 21.2 ... 25.0 25.9\n", " MAX_REL_HUMIDITY (station, time) float64 nan nan nan ... 98.0 99.0 74.0