code: def test_absolute_scaled_error():
      for label in TIME_SERIES:
          for forecast in TIME_SERIES:
              # applying `seasonal_error` on the label is not realistic but
              # at least, the seasonal error function gets used this way
              seasonal_err = seasonal_error(label, seasonality=2)
              data = {
                  "label": label,
                  "0.5": forecast,
                  "seasonal_error": seasonal_err,
              }
  
              actual = absolute_scaled_error(data, forecast_type="0.5")
              expected = np.abs(label - forecast) / seasonal_err
  
              np.testing.assert_almost_equal(actual, expected)
  
file_path: gluonts/test/ev/test_stats.py
imports: import numpy
  from gluonts.ev.stats import absolute_error, absolute_label, absolute_percentage_error, coverage, error, quantile_loss, squared_error, symmetric_absolute_percentage_error, scaled_interval_score, absolute_scaled_error, scaled_quantile_loss
  from gluonts.ev.ts_stats import seasonal_error
label_desc: Use image node_id 10 for calling a global function with example usage: test_absolute_scaled_error() without return types