class_docstr: Base class for probabilistic forecasting error metrics in sktime.
  
  Extends sktime's BaseMetric to the forecasting interface. Forecasting error
  metrics measure the error (loss) between forecasts and true values. Lower
  values are better.
  
  Parameters
  ----------
  multioutput : {'raw_values', 'uniform_average'}  or array-like of shape             (n_outputs,), default='uniform_average'
      Defines how to aggregate metric for multivariate (multioutput) data.
      If array-like, values used as weights to average the errors.
      If 'raw_values', returns a full set of errors in case of multioutput input.
      If 'uniform_average', errors of all outputs are averaged with uniform weight.
  score_average : bool, optional, default=True
      for interval and quantile losses only
          if True, metric/loss is averaged by upper/lower and/or quantile
          if False, metric/loss is not averaged by upper/lower and/or quantile
class_docstr_tok: ["Base","class","for","probabilistic","forecasting","error","metrics","in","sktime",".","Extends","sktime","'s","BaseMetric","to","the","forecasting","interface",".","Forecasting","error","metrics","measure","the","error","(","loss",")","between","forecasts","and","true","values",".","Lower","values","are","better",".","Parameters","--","--","--","--","--","multioutput",":","{","'raw_values","'",",","'uniform_average","'","}","or","array-like","of","shape","(","n_outputs",",",")",",","default='uniform_average'","Defines","how","to","aggregate","metric","for","multivariate","(","multioutput",")","data",".","If","array-like",",","values","used","as","weights","to","average","the","errors",".","If","'raw_values","'",",","returns","a","full","set","of","errors","in","case","of","multioutput","input",".","If","'uniform_average","'",",","errors","of","all","outputs","are","averaged","with","uniform","weight",".","score_average",":","bool",",","optional",",","default=True","for","interval","and","quantile","losses","only","if","True",",","metric\/loss","is","averaged","by","upper\/lower","and\/or","quantile","if","False",",","metric\/loss","is","not","averaged","by","upper\/lower","and\/or","quantile"]
code: def _check_consistent_input(self, y_true, y_pred, multioutput):
      check_consistent_length(y_true, y_pred)
  
      y_true = check_array(y_true, ensure_2d=False)
  
      if not isinstance(y_pred, pd.DataFrame):
          raise ValueError("y_pred should be a dataframe.")
  
      if not np.all(
          [is_numeric_dtype(y_pred[c]) for c in y_pred.columns]
      ):
          raise ValueError("Data should be numeric.")
  
      if y_true.ndim == 1:
          y_true = y_true.reshape((-1, 1))
  
      n_outputs = y_true.shape[1]
  
      allowed_multioutput_str = (
          "raw_values",
          "uniform_average",
          "variance_weighted",
      )
      if isinstance(multioutput, str):
          if multioutput not in allowed_multioutput_str:
              raise ValueError(
                  "Allowed 'multioutput' string values are {}. "
                  "You provided multioutput={!r}".format(
                      allowed_multioutput_str, multioutput
                  )
              )
      elif multioutput is not None:
          multioutput = check_array(multioutput, ensure_2d=False)
          if n_outputs == 1:
              raise ValueError(
                  "Custom weights are useful only in multi-output case."
              )
          elif n_outputs != len(multioutput):
              raise ValueError(
                  "There must be equally many custom weights (%d) as outputs (%d)."
                  % (len(multioutput), n_outputs)
              )
  
      return y_true, y_pred, multioutput
  
imports: from logging import warning
  import numpy
  import pandas
  from pandas.api.types import is_numeric_dtype
  from sklearn.utils import check_array, check_consistent_length
  from sktime.datatypes import check_is_scitype, convert, convert_to
  from sktime.performance_metrics.forecasting._classes import BaseForecastingErrorMetric
  from sktime.performance_metrics.forecasting._coerce import _coerce_to_scalar
label_desc: Use image node_id 7 for calling the _BaseProbaForecastingErrorMetric obj's underlying member method code with example usage: obj._check_consistent_input(y_true, y_pred, multioutput) and returns: y_true,  y_pred,  multioutput