--- title: GEFCom 2014 dataset keywords: fastai sidebar: home_sidebar summary: "Download the GEFCom 2024 dataset." description: "Download the GEFCom 2024 dataset." nb_path: "nbs/data_datasets__gefcom2014.ipynb" ---
{% raw %}
{% endraw %} {% raw %}
{% endraw %} {% raw %}
import matplotlib.pyplot as plt
from matplotlib import rcParams
plt.rcParams['font.family'] = 'serif'
FONTSIZE = 22
{% endraw %}

GEFCom2014

{% raw %}

class Extended[source]

Extended(test_date:str='2016-12-27', name:str='Extended', freq:str='Y')

Extended(test_date: str = '2016-12-27', name: str = 'Extended', freq: str = 'Y')

{% endraw %} {% raw %}

class Load[source]

Load(test_date:str='2016-12-27', name:str='Load', freq:str='H')

Load(test_date: str = '2016-12-27', name: str = 'Load', freq: str = 'H')

{% endraw %} {% raw %}

class Price[source]

Price(test_date:str='2015-01-04', name:str='Price', freq:str='H')

Price(test_date: str = '2015-01-04', name: str = 'Price', freq: str = 'H')

{% endraw %} {% raw %}

class Solar[source]

Solar(test_date:str='2015-01-04', name:str='Solar', freq:str='H')

Solar(test_date: str = '2015-01-04', name: str = 'Solar', freq: str = 'H')

{% endraw %} {% raw %}

class Wind[source]

Wind(test_date:str='2016-01-04', name:str='Wind', freq:str='H')

Wind(test_date: str = '2016-01-04', name: str = 'Wind', freq: str = 'H')

{% endraw %} {% raw %}
{% endraw %} {% raw %}

class GEFCom2014[source]

GEFCom2014()

{% endraw %} {% raw %}
{% endraw %} {% raw %}
GEFCom2014.download(f'data')
100%|██████████| 126M/126M [00:03<00:00, 35.9MiB/s] 
INFO:nixtla.data.datasets.utils:Successfully downloaded GEFCom2014.zip?dl=1, 126360077, bytes.
INFO:nixtla.data.datasets.utils:Successfully decompressed data/gefcom2014/GEFCom2014.zip?dl=1
INFO:__main__:Successfully decompressed data/gefcom2014/GEFCom2014 Data/GEFCom2014-E_V2.zip
INFO:__main__:Successfully decompressed data/gefcom2014/GEFCom2014 Data/GEFCom2014-L_V2.zip
INFO:__main__:Successfully decompressed data/gefcom2014/GEFCom2014 Data/GEFCom2014-P_V2.zip
INFO:__main__:Successfully decompressed data/gefcom2014/GEFCom2014 Data/GEFCom2014-S_V2.zip
INFO:__main__:Successfully decompressed data/gefcom2014/GEFCom2014 Data/GEFCom2014-W_V2.zip
{% endraw %}

GEFCom2014-L: Original Electricity Load Task Datasets

  • Y: 5 years of hourly load data (augmented with tasks).
  • X: 11 years of 25 weather stations to be filtered (augmented with tasks).
  • Tasks: Fifteen one-month-ahead forecast quantiles of hourly loads on rolling basis.
{% raw %}

class LoadTask1[source]

LoadTask1(test_start:str='10/01/2010', test_end:str='11/01/2010')

LoadTask1(test_start: str = '10/01/2010', test_end: str = '11/01/2010')

{% endraw %} {% raw %}

class LoadTask2[source]

LoadTask2(test_start:str='11/01/2010', test_end:str='12/01/2010')

LoadTask2(test_start: str = '11/01/2010', test_end: str = '12/01/2010')

{% endraw %} {% raw %}

class LoadTask3[source]

LoadTask3(test_start:str='12/01/2010', test_end:str='01/01/2011')

LoadTask3(test_start: str = '12/01/2010', test_end: str = '01/01/2011')

{% endraw %} {% raw %}

class LoadTask4[source]

LoadTask4(test_start:str='01/01/2011', test_end:str='02/01/2011')

LoadTask4(test_start: str = '01/01/2011', test_end: str = '02/01/2011')

{% endraw %} {% raw %}

class LoadTask5[source]

LoadTask5(test_start:str='02/01/2011', test_end:str='03/01/2011')

LoadTask5(test_start: str = '02/01/2011', test_end: str = '03/01/2011')

{% endraw %} {% raw %}

class LoadTask6[source]

LoadTask6(test_start:str='03/01/2011', test_end:str='04/01/2011')

LoadTask6(test_start: str = '03/01/2011', test_end: str = '04/01/2011')

{% endraw %} {% raw %}

class LoadTask7[source]

LoadTask7(test_start:str='04/01/2011', test_end:str='05/01/2011')

LoadTask7(test_start: str = '04/01/2011', test_end: str = '05/01/2011')

{% endraw %} {% raw %}

class LoadTask8[source]

LoadTask8(test_start:str='05/01/2011', test_end:str='06/01/2011')

LoadTask8(test_start: str = '05/01/2011', test_end: str = '06/01/2011')

{% endraw %} {% raw %}

class LoadTask9[source]

LoadTask9(test_start:str='06/01/2011', test_end:str='07/01/2011')

LoadTask9(test_start: str = '06/01/2011', test_end: str = '07/01/2011')

{% endraw %} {% raw %}

class LoadTask10[source]

LoadTask10(test_start:str='07/01/2011', test_end:str='08/01/2011')

LoadTask10(test_start: str = '07/01/2011', test_end: str = '08/01/2011')

{% endraw %} {% raw %}

class LoadTask11[source]

LoadTask11(test_start:str='08/01/2011', test_end:str='09/01/2011')

LoadTask11(test_start: str = '08/01/2011', test_end: str = '09/01/2011')

{% endraw %} {% raw %}

class LoadTask12[source]

LoadTask12(test_start:str='09/01/2011', test_end:str='10/01/2011')

LoadTask12(test_start: str = '09/01/2011', test_end: str = '10/01/2011')

{% endraw %} {% raw %}

class LoadTask13[source]

LoadTask13(test_start:str='10/01/2011', test_end:str='11/01/2011')

LoadTask13(test_start: str = '10/01/2011', test_end: str = '11/01/2011')

{% endraw %} {% raw %}

class LoadTask14[source]

LoadTask14(test_start:str='11/01/2011', test_end:str='12/01/2011')

LoadTask14(test_start: str = '11/01/2011', test_end: str = '12/01/2011')

{% endraw %} {% raw %}

class LoadTask15[source]

LoadTask15(test_start:str='12/01/2011', test_end:str='01/01/2012')

LoadTask15(test_start: str = '12/01/2011', test_end: str = '01/01/2012')

{% endraw %} {% raw %}

class LoadTask16[source]

LoadTask16(test_start:str='01/01/2012', test_end:str='02/01/2012')

LoadTask16(test_start: str = '01/01/2012', test_end: str = '02/01/2012')

{% endraw %} {% raw %}
{% endraw %} {% raw %}

class GEFCom2014_L[source]

GEFCom2014_L()

{% endraw %} {% raw %}
{% endraw %} {% raw %}
Y_df, X_df, benchmark_df = GEFCom2014_L.load(directory='data', group='Task 14')

#ds = Y_df.ds.values[365*24:]
#y_true = Y_df.y.values[365*24:]
ds = Y_df.ds.values[-740:]
y_true = Y_df.y.values[-740:]

x_plot = Y_df.ds.values
x_plot_min = pd.to_datetime(x_plot.min()).strftime('%B %d, %Y')
x_plot_max = pd.to_datetime(x_plot.max()).strftime('%B %d, %Y')
x_axis_str = f'Hours [{x_plot_min}  to  {x_plot_max}]'
y_axis_str = 'Load (MW)'

fig = plt.figure(figsize=(15, 4))
fig.tight_layout()
ax0 = plt.subplot2grid((1,1),(0, 0))
axs = [ax0]

axs[0].plot(ds, y_true, color='#628793', linewidth=0.4, label='true')
axs[0].tick_params(labelsize=FONTSIZE-5)
axs[0].set_xlabel(x_axis_str, fontsize=FONTSIZE)
axs[0].set_ylabel(y_axis_str, fontsize=FONTSIZE)
plt.ylim(50, 350)
plt.title('GEFCom2014-L', fontsize=FONTSIZE)
plt.grid()
plt.show()
{% endraw %}

GEFCom2014-E: Extended 2015 Electricity Load Task Datasets

  • Y: Four years of hourly load data (augmented with tasks).
  • X: Six years of hourly temperature (augmented with tasks).
  • Task: Five one-year-ahead forecast quantiles of hourly loads on rolling basis.
{% raw %}

class GEFCom2014_E[source]

GEFCom2014_E()

{% endraw %} {% raw %}
{% endraw %} {% raw %}
Y_df, X_df = GEFCom2014_E.load(directory='data')

ds = Y_df.ds.values
y_true = Y_df.y.values

x_plot = Y_df.ds.values
x_plot_min = pd.to_datetime(x_plot.min()).strftime('%B %d, %Y')
x_plot_max = pd.to_datetime(x_plot.max()).strftime('%B %d, %Y')
x_axis_str = f'Hours [{x_plot_min}  to  {x_plot_max}]'
y_axis_str = 'Load (MW)'

fig = plt.figure(figsize=(15, 4))
fig.tight_layout()
ax0 = plt.subplot2grid((1,1),(0, 0))
axs = [ax0]

axs[0].plot(ds, y_true, color='#628793', linewidth=0.4, label='true')
axs[0].tick_params(labelsize=FONTSIZE-5)
axs[0].set_xlabel(x_axis_str, fontsize=FONTSIZE)
axs[0].set_ylabel(y_axis_str, fontsize=FONTSIZE)
plt.ylim(1800, 5800)
plt.title('GEFCom2014-E', fontsize=FONTSIZE)
plt.grid()
plt.show()
{% endraw %}

GEFCOM2014-P: Electricity Price Task Datasets

  • Y: Hourly electricity price
  • X: Zonal and system load day-ahead forecasts
  • Tasks: Fifteen one-day-ahead forecast quantiles of hourly price on rolling basis.
{% raw %}

class PriceTask1[source]

PriceTask1(test_start:str='06/16/2013', test_end:str='06/17/2013')

PriceTask1(test_start: str = '06/16/2013', test_end: str = '06/17/2013')

{% endraw %} {% raw %}

class PriceTask2[source]

PriceTask2(test_start:str='06/17/2013', test_end:str='06/18/2013')

PriceTask2(test_start: str = '06/17/2013', test_end: str = '06/18/2013')

{% endraw %} {% raw %}

class PriceTask3[source]

PriceTask3(test_start:str='06/24/2013', test_end:str='06/25/2013')

PriceTask3(test_start: str = '06/24/2013', test_end: str = '06/25/2013')

{% endraw %} {% raw %}

class PriceTask4[source]

PriceTask4(test_start:str='07/04/2013', test_end:str='07/05/2013')

PriceTask4(test_start: str = '07/04/2013', test_end: str = '07/05/2013')

{% endraw %} {% raw %}

class PriceTask5[source]

PriceTask5(test_start:str='07/09/2013', test_end:str='07/10/2013')

PriceTask5(test_start: str = '07/09/2013', test_end: str = '07/10/2013')

{% endraw %} {% raw %}

class PriceTask6[source]

PriceTask6(test_start:str='07/13/2013', test_end:str='07/14/2013')

PriceTask6(test_start: str = '07/13/2013', test_end: str = '07/14/2013')

{% endraw %} {% raw %}

class PriceTask7[source]

PriceTask7(test_start:str='07/16/2013', test_end:str='07/17/2013')

PriceTask7(test_start: str = '07/16/2013', test_end: str = '07/17/2013')

{% endraw %} {% raw %}

class PriceTask8[source]

PriceTask8(test_start:str='07/18/2013', test_end:str='07/19/2013')

PriceTask8(test_start: str = '07/18/2013', test_end: str = '07/19/2013')

{% endraw %} {% raw %}

class PriceTask9[source]

PriceTask9(test_start:str='07/19/2013', test_end:str='07/20/2013')

PriceTask9(test_start: str = '07/19/2013', test_end: str = '07/20/2013')

{% endraw %} {% raw %}

class PriceTask10[source]

PriceTask10(test_start:str='07/20/2013', test_end:str='07/21/2013')

PriceTask10(test_start: str = '07/20/2013', test_end: str = '07/21/2013')

{% endraw %} {% raw %}

class PriceTask11[source]

PriceTask11(test_start:str='07/24/2013', test_end:str='07/25/2013')

PriceTask11(test_start: str = '07/24/2013', test_end: str = '07/25/2013')

{% endraw %} {% raw %}

class PriceTask12[source]

PriceTask12(test_start:str='07/25/2013', test_end:str='07/26/2013')

PriceTask12(test_start: str = '07/25/2013', test_end: str = '07/26/2013')

{% endraw %} {% raw %}

class PriceTask13[source]

PriceTask13(test_start:str='12/07/2013', test_end:str='12/08/2013')

PriceTask13(test_start: str = '12/07/2013', test_end: str = '12/08/2013')

{% endraw %} {% raw %}

class PriceTask14[source]

PriceTask14(test_start:str='12/08/2013', test_end:str='12/09/2013')

PriceTask14(test_start: str = '12/08/2013', test_end: str = '12/09/2013')

{% endraw %} {% raw %}

class PriceTask15[source]

PriceTask15(test_start:str='12/17/2013', test_end:str='12/18/2013')

PriceTask15(test_start: str = '12/17/2013', test_end: str = '12/18/2013')

{% endraw %} {% raw %}
{% endraw %} {% raw %}

class GEFCom2014_P[source]

GEFCom2014_P()

{% endraw %} {% raw %}
{% endraw %} {% raw %}
Y_df, X_df, benchmark_df = GEFCom2014_P.load(directory='data', group='Task 15')

ds = Y_df.ds.values
y_true = Y_df.y.values

x_plot = Y_df.ds.values
x_plot_min = pd.to_datetime(x_plot.min()).strftime('%B %d, %Y')
x_plot_max = pd.to_datetime(x_plot.max()).strftime('%B %d, %Y')
x_axis_str = f'Hours [{x_plot_min}  to  {x_plot_max}]'
y_axis_str = 'Price [USD/MWh]'

fig = plt.figure(figsize=(15, 4))
fig.tight_layout()
ax0 = plt.subplot2grid((1,1),(0, 0))
axs = [ax0]

axs[0].plot(ds, y_true, color='#628793', linewidth=0.4, label='true')
axs[0].tick_params(labelsize=FONTSIZE-5)
axs[0].set_xlabel(x_axis_str, fontsize=FONTSIZE)
axs[0].set_ylabel(y_axis_str, fontsize=FONTSIZE)
plt.title('GEFCom2014-P', fontsize=FONTSIZE)
plt.grid()
plt.show()
{% endraw %}

GEFCOM2014-W: Wind Power Generation Task Datasets

  • Y: 10 target wind power series, for 10 different Australian wind farms.
  • X: Wind forecasts at 10m and 100m height for the zonal (u) and meridional (v) wind components (winning submission used external data).
  • Tasks: Fifteen one-month-ahead hourly wind power generation for 10 farms.
{% raw %}

class WindTask1[source]

WindTask1(test_start:str='10/01/2012', test_end:str='11/01/2012')

WindTask1(test_start: str = '10/01/2012', test_end: str = '11/01/2012')

{% endraw %} {% raw %}

class WindTask2[source]

WindTask2(test_start:str='11/01/2012', test_end:str='12/01/2012')

WindTask2(test_start: str = '11/01/2012', test_end: str = '12/01/2012')

{% endraw %} {% raw %}

class WindTask3[source]

WindTask3(test_start:str='12/01/2012', test_end:str='01/01/2013')

WindTask3(test_start: str = '12/01/2012', test_end: str = '01/01/2013')

{% endraw %} {% raw %}

class WindTask4[source]

WindTask4(test_start:str='01/01/2013', test_end:str='02/01/2013')

WindTask4(test_start: str = '01/01/2013', test_end: str = '02/01/2013')

{% endraw %} {% raw %}

class WindTask5[source]

WindTask5(test_start:str='02/01/2013', test_end:str='03/01/2013')

WindTask5(test_start: str = '02/01/2013', test_end: str = '03/01/2013')

{% endraw %} {% raw %}

class WindTask6[source]

WindTask6(test_start:str='03/01/2013', test_end:str='04/01/2013')

WindTask6(test_start: str = '03/01/2013', test_end: str = '04/01/2013')

{% endraw %} {% raw %}

class WindTask7[source]

WindTask7(test_start:str='04/01/2013', test_end:str='05/01/2013')

WindTask7(test_start: str = '04/01/2013', test_end: str = '05/01/2013')

{% endraw %} {% raw %}

class WindTask8[source]

WindTask8(test_start:str='05/01/2013', test_end:str='06/01/2013')

WindTask8(test_start: str = '05/01/2013', test_end: str = '06/01/2013')

{% endraw %} {% raw %}

class WindTask9[source]

WindTask9(test_start:str='06/01/2013', test_end:str='07/01/2013')

WindTask9(test_start: str = '06/01/2013', test_end: str = '07/01/2013')

{% endraw %} {% raw %}

class WindTask10[source]

WindTask10(test_start:str='07/01/2013', test_end:str='08/01/2013')

WindTask10(test_start: str = '07/01/2013', test_end: str = '08/01/2013')

{% endraw %} {% raw %}

class WindTask11[source]

WindTask11(test_start:str='08/01/2013', test_end:str='09/01/2013')

WindTask11(test_start: str = '08/01/2013', test_end: str = '09/01/2013')

{% endraw %} {% raw %}

class WindTask12[source]

WindTask12(test_start:str='09/01/2013', test_end:str='10/01/2013')

WindTask12(test_start: str = '09/01/2013', test_end: str = '10/01/2013')

{% endraw %} {% raw %}

class WindTask13[source]

WindTask13(test_start:str='10/01/2013', test_end:str='11/01/2013')

WindTask13(test_start: str = '10/01/2013', test_end: str = '11/01/2013')

{% endraw %} {% raw %}

class WindTask14[source]

WindTask14(test_start:str='11/01/2013', test_end:str='12/01/2013')

WindTask14(test_start: str = '11/01/2013', test_end: str = '12/01/2013')

{% endraw %} {% raw %}

class WindTask15[source]

WindTask15(test_start:str='12/01/2013', test_end:str='01/01/2014')

WindTask15(test_start: str = '12/01/2013', test_end: str = '01/01/2014')

{% endraw %} {% raw %}
{% endraw %} {% raw %}

class GEFCom2014_W[source]

GEFCom2014_W()

{% endraw %} {% raw %}
{% endraw %} {% raw %}
Y_df, X_df, benchmark_df = GEFCom2014_W.load(directory='data', group='Task 15')

Y_df = Y_df[Y_df.unique_id==2]

ds = Y_df.ds.values
y_true = Y_df.y.values

x_plot = Y_df.ds.values
x_plot_min = pd.to_datetime(x_plot.min()).strftime('%B %d, %Y')
x_plot_max = pd.to_datetime(x_plot.max()).strftime('%B %d, %Y')
x_axis_str = f'Hours [{x_plot_min}  to  {x_plot_max}]'
y_axis_str = 'Power'

fig = plt.figure(figsize=(15, 4))
fig.tight_layout()
ax0 = plt.subplot2grid((1,1),(0, 0))
axs = [ax0]

axs[0].plot(ds, y_true, color='#628793', linewidth=0.4, label='true')
axs[0].tick_params(labelsize=FONTSIZE-5)
axs[0].set_xlabel(x_axis_str, fontsize=FONTSIZE)
axs[0].set_ylabel(y_axis_str, fontsize=FONTSIZE)
plt.title('GEFCom2014-W', fontsize=FONTSIZE)
plt.grid()
plt.show()
INFO:__main__:Successfully decompressed Wind tasks
{% endraw %}

GEFCom2014-S: Solar Power Generation Task Datasets

  • Y: 3 target solar power series, for 3 different solar power plants.
  • X: 12 weather variables associated to the solar power plants.
  • Tasks: Fifteen one-month-ahead hourly solar power generation for 3 power platns.
{% raw %}

class SolarTask1[source]

SolarTask1(test_start:str='04/01/2013', test_end:str='05/01/2013')

SolarTask1(test_start: str = '04/01/2013', test_end: str = '05/01/2013')

{% endraw %} {% raw %}

class SolarTask2[source]

SolarTask2(test_start:str='05/01/2013', test_end:str='06/01/2013')

SolarTask2(test_start: str = '05/01/2013', test_end: str = '06/01/2013')

{% endraw %} {% raw %}

class SolarTask3[source]

SolarTask3(test_start:str='06/01/2013', test_end:str='07/01/2013')

SolarTask3(test_start: str = '06/01/2013', test_end: str = '07/01/2013')

{% endraw %} {% raw %}

class SolarTask4[source]

SolarTask4(test_start:str='07/01/2013', test_end:str='08/01/2013')

SolarTask4(test_start: str = '07/01/2013', test_end: str = '08/01/2013')

{% endraw %} {% raw %}

class SolarTask5[source]

SolarTask5(test_start:str='08/01/2013', test_end:str='09/01/2013')

SolarTask5(test_start: str = '08/01/2013', test_end: str = '09/01/2013')

{% endraw %} {% raw %}

class SolarTask6[source]

SolarTask6(test_start:str='09/01/2013', test_end:str='10/01/2013')

SolarTask6(test_start: str = '09/01/2013', test_end: str = '10/01/2013')

{% endraw %} {% raw %}

class SolarTask7[source]

SolarTask7(test_start:str='10/01/2013', test_end:str='11/01/2013')

SolarTask7(test_start: str = '10/01/2013', test_end: str = '11/01/2013')

{% endraw %} {% raw %}

class SolarTask8[source]

SolarTask8(test_start:str='11/01/2013', test_end:str='12/01/2013')

SolarTask8(test_start: str = '11/01/2013', test_end: str = '12/01/2013')

{% endraw %} {% raw %}

class SolarTask9[source]

SolarTask9(test_start:str='12/01/2013', test_end:str='01/01/2014')

SolarTask9(test_start: str = '12/01/2013', test_end: str = '01/01/2014')

{% endraw %} {% raw %}

class SolarTask10[source]

SolarTask10(test_start:str='01/01/2014', test_end:str='02/01/2014')

SolarTask10(test_start: str = '01/01/2014', test_end: str = '02/01/2014')

{% endraw %} {% raw %}

class SolarTask11[source]

SolarTask11(test_start:str='02/01/2014', test_end:str='03/01/2014')

SolarTask11(test_start: str = '02/01/2014', test_end: str = '03/01/2014')

{% endraw %} {% raw %}

class SolarTask12[source]

SolarTask12(test_start:str='03/01/2014', test_end:str='04/01/2014')

SolarTask12(test_start: str = '03/01/2014', test_end: str = '04/01/2014')

{% endraw %} {% raw %}

class SolarTask13[source]

SolarTask13(test_start:str='04/01/2014', test_end:str='05/01/2014')

SolarTask13(test_start: str = '04/01/2014', test_end: str = '05/01/2014')

{% endraw %} {% raw %}

class SolarTask14[source]

SolarTask14(test_start:str='05/01/2014', test_end:str='06/01/2014')

SolarTask14(test_start: str = '05/01/2014', test_end: str = '06/01/2014')

{% endraw %} {% raw %}

class SolarTask15[source]

SolarTask15(test_start:str='06/01/2014', test_end:str='07/01/2014')

SolarTask15(test_start: str = '06/01/2014', test_end: str = '07/01/2014')

{% endraw %} {% raw %}
{% endraw %} {% raw %}

class GEFCom2014_S[source]

GEFCom2014_S()

{% endraw %} {% raw %}
{% endraw %} {% raw %}
Y_df, X_df, benchmark_df = GEFCom2014_S.load(directory='data', group='Task 15')

Y_df = Y_df[Y_df.unique_id==2]

ds = Y_df.ds.values
y_true = Y_df.y.values

x_plot = Y_df.ds.values
x_plot_min = pd.to_datetime(x_plot.min()).strftime('%B %d, %Y')
x_plot_max = pd.to_datetime(x_plot.max()).strftime('%B %d, %Y')
x_axis_str = f'Hours [{x_plot_min}  to  {x_plot_max}]'
y_axis_str = 'Power'

fig = plt.figure(figsize=(15, 4))
fig.tight_layout()
ax0 = plt.subplot2grid((1,1),(0, 0))
axs = [ax0]

axs[0].plot(ds, y_true, color='#628793', linewidth=0.4, label='true')
axs[0].tick_params(labelsize=FONTSIZE-5)
axs[0].set_xlabel(x_axis_str, fontsize=FONTSIZE)
axs[0].set_ylabel(y_axis_str, fontsize=FONTSIZE)
plt.title('GEFCom2014-S', fontsize=FONTSIZE)
plt.grid()
plt.show()
{% endraw %}