class_docstr: Splitter that adds the train sets to the test sets.
  
  Takes a splitter ``cv`` and modifies it in the following way:
  The i-th train sets is identical to the i-th train set of ``cv``.
  The i-th test set is the union of the i-th train set and i-th test set of ``cv``.
  
  Parameters
  ----------
  cv : BaseSplitter
      splitter to modify as above
  
  Examples
  --------
  >>> from sktime.datasets import load_airline
  >>> from sktime.split import ExpandingWindowSplitter
  
  >>> y = load_airline()
  >>> y_template = y[:60]
  >>> cv_tpl = ExpandingWindowSplitter(fh=[2, 4], initial_window=24, step_length=12)
  
  >>> splitter = TestPlusTrainSplitter(cv_tpl)
docstr: Return the number of splits.
  
  This will always be equal to the number of splits
  of ``self.cv`` on ``y``.
  
  Parameters
  ----------
  y : pd.Series or pd.Index, optional (default=None)
      Time series to split
  
  Returns
  -------
  n_splits : int
      The number of splits.
code: def get_n_splits(self, y: Optional[ACCEPTED_Y_TYPES] = None) -> int:
      """Return the number of splits.
  
      This will always be equal to the number of splits
      of ``self.cv`` on ``y``.
  
      Parameters
      ----------
      y : pd.Series or pd.Index, optional (default=None)
          Time series to split
  
      Returns
      -------
      n_splits : int
          The number of splits.
      """
      return self.cv.get_n_splits(y)
  
file_path: sktime/sktime/split/testplustrain.py
imports: from typing import Optional
  import numpy
  import pandas
  from sktime.split.base import BaseSplitter
  from sktime.split.base._common import ACCEPTED_Y_TYPES, SPLIT_GENERATOR_TYPE
label_desc: Use image node_id 4 for calling the TestPlusTrainSplitter obj's underlying member method code with example usage: obj.get_n_splits(y) and returns: self