class_docstr: Base forecaster template class.
  
  The base forecaster specifies the methods and method signatures that all forecasters
  have to implement.
  
  Specific implementations of these methods is deferred to concrete forecasters.
class_docstr_tok: ["Base","forecaster","template","class",".","The","base","forecaster","specifies","the","methods","and","method","signatures","that","all","forecasters","have","to","implement",".","Specific","implementations","of","these","methods","is","deferred","to","concrete","forecasters","."]
docstr: Return variable column for DataFrame-like returns.
  
  Primarily used as helper for probabilistic predict-like methods.
  Assumes that _check_X_y has been called, and self._y_metadata set.
  
  Parameter
  ---------
  y : ignored, present for downwards compatibility
  
  Returns
  -------
  varnames : iterable of integer or str variable names
      can be list or pd.Index
      variable names for DataFrame-like returns
      identical to self._y_varnames if this attribute exists
docstr_tok: ["Return","variable","column","for","DataFrame-like","returns",".","Primarily","used","as","helper","for","probabilistic","predict-like","methods",".","Assumes","that","_check_X_y","has","been","called",",","and","self._y_metadata","set",".","Parameter","--","--","--","--","-","y",":","ignored",",","present","for","downwards","compatibility","Returns","--","--","--","-","varnames",":","iterable","of","integer","or","str","variable","names","can","be","list","or","pd.Index","variable","names","for","DataFrame-like","returns","identical","to","self._y_varnames","if","this","attribute","exists"]
code: def _get_varnames(self, y=None):
      """Return variable column for DataFrame-like returns.
  
      Primarily used as helper for probabilistic predict-like methods.
      Assumes that _check_X_y has been called, and self._y_metadata set.
  
      Parameter
      ---------
      y : ignored, present for downwards compatibility
  
      Returns
      -------
      varnames : iterable of integer or str variable names
          can be list or pd.Index
          variable names for DataFrame-like returns
          identical to self._y_varnames if this attribute exists
      """
      featnames = self._y_metadata["feature_names"]
      return featnames
  
imports: from copy import deepcopy
  from itertools import product
  import numpy
  import pandas
  from sktime.base import BaseEstimator
  from sktime.datatypes import VectorizedDF, check_is_scitype, convert_to, get_cutoff, mtype_to_scitype, scitype_to_mtype, update_data
  from sktime.forecasting.base._fh import ForecastingHorizon
  from sktime.utils.datetime import _shift
  from sktime.utils.validation._dependencies import _check_estimator_deps
  from sktime.utils.validation.forecasting import check_alpha, check_cv, check_fh, check_X
  from sktime.utils.validation.series import check_equal_time_index
  from sktime.utils.warnings import warn
label_desc: Use image node_id 39 for calling the BaseForecaster obj's underlying member method code with example usage: obj._get_varnames(y) and returns: featnames