{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Data Setup\n", "\n", "In this notebook, we demonstrate how to:\n", "- setup time series data for this module\n", "- visualize the data\n", "\n", "The data in this example is taken from the GEFCom2014 forecasting competition1. It consists of 3 years of hourly electricity load and temperature values between 2012 and 2014. \n", "\n", "1Tao Hong, Pierre Pinson, Shu Fan, Hamidreza Zareipour, Alberto Troccoli and Rob J. Hyndman, \"Probabilistic energy forecasting: Global Energy Forecasting Competition 2014 and beyond\", International Journal of Forecasting, vol.32, no.3, pp 896-913, July-September, 2016." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import os\n", "import matplotlib.pyplot as plt\n", "from common.utils import load_data\n", "from common.extract_data import extract_data\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Download the data." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--2021-05-07 21:05:54-- https://www.dropbox.com/s/pqenrr2mcvl0hk9/GEFCom2014.zip\n", "Resolving www.dropbox.com (www.dropbox.com)... 162.125.4.18, 2620:100:601c:18::a27d:612\n", "Connecting to www.dropbox.com (www.dropbox.com)|162.125.4.18|:443... connected.\n", "HTTP request sent, awaiting response... 301 Moved Permanently\n", "Location: /s/raw/pqenrr2mcvl0hk9/GEFCom2014.zip [following]\n", "--2021-05-07 21:05:54-- https://www.dropbox.com/s/raw/pqenrr2mcvl0hk9/GEFCom2014.zip\n", "Reusing existing connection to www.dropbox.com:443.\n", "HTTP request sent, awaiting response... 302 Found\n", "Location: https://ucc95032fcc08d2029d05fd28ee3.dl.dropboxusercontent.com/cd/0/inline/BOCEToGt2aevQV-5JUv11oxvMKeMZawCv8xKhhnnNRk_WU4Kx0krYjqWCnZ5Mz-Mo4zz1s3aU-g-8ht9eLRMmjrvpWF64YWmIuCc8DcCC5lcQLw1nRq9PVdV-UorUHEGwc--ii4p-BgruOSvYD2Z_sIG/file# [following]\n", "--2021-05-07 21:05:55-- https://ucc95032fcc08d2029d05fd28ee3.dl.dropboxusercontent.com/cd/0/inline/BOCEToGt2aevQV-5JUv11oxvMKeMZawCv8xKhhnnNRk_WU4Kx0krYjqWCnZ5Mz-Mo4zz1s3aU-g-8ht9eLRMmjrvpWF64YWmIuCc8DcCC5lcQLw1nRq9PVdV-UorUHEGwc--ii4p-BgruOSvYD2Z_sIG/file\n", "Resolving ucc95032fcc08d2029d05fd28ee3.dl.dropboxusercontent.com (ucc95032fcc08d2029d05fd28ee3.dl.dropboxusercontent.com)... 162.125.9.15, 2620:100:6020:15::a27d:400f\n", "Connecting to ucc95032fcc08d2029d05fd28ee3.dl.dropboxusercontent.com (ucc95032fcc08d2029d05fd28ee3.dl.dropboxusercontent.com)|162.125.9.15|:443... connected.\n", "HTTP request sent, awaiting response... 302 Found\n", "Location: /cd/0/inline2/BOBC3MCVXz0vCSNRo54hXfys_k17p8iSBszS5JgLbM0yzIThhytWiSw26nBAwT75Lqdd1Bm1RSlPRNQkYpJMesKBH-4Rm6o4WE-_vqWZo9ed7P4RWOY2Igvv5Mb4jixpp_rzihr24R_o22mTga57do_U6sy4GyAaso-ruDruvgLS_xBkzieyPgxcn640haWKrBwAuKMqsS9qEQ8MAwPekj7P4WmQcl-Al5X4ifm4YHKthQoooJ4ZDcz7-axWp8eQ23XqlQ4QvL0nsi7unWBQi_BOPSXXlqTN9IfeZpegQjNLFXi7zBko9Qkvo5BNFhTFNY-BBDbQDCQB-Xj6ENCBLiK1N7bbAUQW_n-WQc3PNVfpMva8kufOnA2yB4aYT7dgfs0/file [following]\n", "--2021-05-07 21:05:55-- https://ucc95032fcc08d2029d05fd28ee3.dl.dropboxusercontent.com/cd/0/inline2/BOBC3MCVXz0vCSNRo54hXfys_k17p8iSBszS5JgLbM0yzIThhytWiSw26nBAwT75Lqdd1Bm1RSlPRNQkYpJMesKBH-4Rm6o4WE-_vqWZo9ed7P4RWOY2Igvv5Mb4jixpp_rzihr24R_o22mTga57do_U6sy4GyAaso-ruDruvgLS_xBkzieyPgxcn640haWKrBwAuKMqsS9qEQ8MAwPekj7P4WmQcl-Al5X4ifm4YHKthQoooJ4ZDcz7-axWp8eQ23XqlQ4QvL0nsi7unWBQi_BOPSXXlqTN9IfeZpegQjNLFXi7zBko9Qkvo5BNFhTFNY-BBDbQDCQB-Xj6ENCBLiK1N7bbAUQW_n-WQc3PNVfpMva8kufOnA2yB4aYT7dgfs0/file\n", "Reusing existing connection to ucc95032fcc08d2029d05fd28ee3.dl.dropboxusercontent.com:443.\n", "HTTP request sent, awaiting response... 200 OK\n", "Length: 126360077 (121M) [application/zip]\n", "Saving to: ‘GEFCom2014.zip’\n", "\n", "GEFCom2014.zip 100%[===================>] 120.51M 88.0MB/s in 1.4s \n", "\n", "2021-05-07 21:05:58 (88.0 MB/s) - ‘GEFCom2014.zip’ saved [126360077/126360077]\n", "\n" ] } ], "source": [ "data_dir = './data'\n", "\n", "if not os.path.exists(os.path.join(data_dir, 'energy.csv')):\n", " # Download and move the zip file\n", " !wget https://www.dropbox.com/s/pqenrr2mcvl0hk9/GEFCom2014.zip\n", " !mv GEFCom2014.zip ./data\n", " # If not done already, extract zipped data and save as csv\n", " extract_data(data_dir)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Load the data from csv into a Pandas dataframe" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", " | load | \n", "
---|---|
2012-01-01 00:00:00 | \n", "2698.0 | \n", "
2012-01-01 01:00:00 | \n", "2558.0 | \n", "
2012-01-01 02:00:00 | \n", "2444.0 | \n", "
2012-01-01 03:00:00 | \n", "2402.0 | \n", "
2012-01-01 04:00:00 | \n", "2403.0 | \n", "