<jupyter_start><jupyter_text>Load result<jupyter_code>path = '../result/gefcom2014-wind/'+trial_name+'/dfs_loss_valid/*'+model_name+'*.csv'
dfs_loss_valid = mqe.forecast.load_dfs_trial(path)<jupyter_output><empty_output><jupyter_text>Competition benchmark<jupyter_code>loss_mean_valid = [df.mean().mean() for df in dfs_loss_valid]
df_scores = pd.read_excel('../data/gefcom2014/gefcom2014-scores.xlsx', index_col=0, header=0, sheet_name='Wind', engine='openpyxl')
df_scores.loc[trial_name,:] = loss_mean_valid
df_scores.loc[:,'Overall'] = df_scores.mean(axis=1)
ax = df_scores['Overall'].sort_values().plot.bar(figsize=(15,5))
wind_teams = ['dmlab', 'kPower', 'pat1']
solar_teams = ['Gang-gang', 'dmlab', 'C3 Green Team']
fig, ax = plt.subplots(figsize=(15,5))

for team in wind_teams: 
    df_scores.loc[team,:][:-1].plot(ax=ax)
ylim = ax.get_ylim()
df_area = pd.DataFrame(data=np.repeat(ylim[1], 3), index=df_scores.columns[:3], columns=['Test period'])
df_area.plot.area(ax=ax, color='grey', alpha=0.3)
df_scores.loc[trial_name,:][:-1].plot(ax=ax)
ax.set_ylim(ylim[0], ylim[1])
ax.set_xlabel('task', fontsize=14)
ax.set_ylabel('pinball loss', fontsize=14)
ax.legend()<jupyter_output><empty_output><jupyter_text>Pinball loss as function of quantiles<jupyter_code>mqe.plot.plot_quantile_loss(dfs_loss_valid)<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.1854899027673897, 'fraction_numerical': 0.02692595362752431, 'mean_word_length': 9.136363636363637, 'pattern_counts': {'":': 0, '<': 13, '<?xml version=': 0, '>': 13, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '3', 'dir': 'jupyter-structured-clean-dedup', 'id': '383894', 'license': 'MIT', 'n_tokens_mistral': 596, 'n_tokens_neox': 558, 'n_words': 66, 'path': 'notebooks/nb-benchmark-gefcom2014.ipynb', 'repo_name': 'greenlytics/power-forecast', 'size': '1337'}