class_docstr: Pipeline of transformers and a pairwise panel transformer.
  
  `PwTrafoPanelPipeline` chains transformers and a pairwise transformer at the end.
  The pipeline is constructed with a list of sktime transformers (BaseTransformer),
      plus a pairwise panel transformer, following BasePairwiseTransformerPanel.
  The transformer list can be unnamed - a simple list of transformers -
      or string named - a list of pairs of string, estimator.
  
  For a list of transformers `trafo1`, `trafo2`, ..., `trafoN` and an estimator `est`,
      the pipeline behaves as follows:
  `transform(X)` - running `trafo1.fit_transform` on `X`,
      them `trafo2.fit_transform` on the output of `trafo1.fit_transform`, etc
      sequentially, with `trafo[i]` receiving the output of `trafo[i-1]`.
      Then passes output of `trafo[N]` to `pw_trafo.transform`, as `X`.
      Same chain of transformers is run on `X2` and passed, if not `None`.
  
  `PwTrafoPanelPipeline` can also be created by using the magic multiplication
      on any parameter estimator: if `pw_t` is `BasePairwiseTransformerPanel`,
          and `my_trafo1`, `my_trafo2` inherit from `BaseTransformer`, then,
          for instance, `my_trafo1 * my_trafo2 * pw_t`
          will result in the same object as  obtained from the constructor
          `PwTrafoPanelPipeline(pw_trafo=pw_t, transformers=[my_trafo1, my_trafo2])`
      magic multiplication can also be used with (str, transformer) pairs,
          as long as one element in the chain is a transformer
  
  Parameters
  ----------
  pw_trafo : pairwise panel transformer,
      i.e., estimator inheriting from BasePairwiseTransformerPanel
      this is a "blueprint" estimator, state does not change when `fit` is called
  transformers : list of sktime transformers, or
      list of tuples (str, transformer) of sktime transformers
      these are "blueprint" transformers, states do not change when `fit` is called
  
  Examples
  --------
  >>> from sktime.dists_kernels.compose import PwTrafoPanelPipeline
  >>> from sktime.dists_kernels.dtw import DtwDist
  >>> from sktime.transformations.series.exponent import ExponentTransformer
  >>> from sktime.datasets import load_unit_test
  >>>
  >>> X, _ = load_unit_test()
  >>> X = X[0:3]
  >>> pipeline = PwTrafoPanelPipeline(DtwDist(), [ExponentTransformer()])
  >>> dist_mat = pipeline.transform(X)
class_docstr_tok: ["Pipeline","of","transformers","and","a","pairwise","panel","transformer",".","`","PwTrafoPanelPipeline","`","chains","transformers","and","a","pairwise","transformer","at","the","end",".","The","pipeline","is","constructed","with","a","list","of","sktime","transformers","(","BaseTransformer",")",",","plus","a","pairwise","panel","transformer",",","following","BasePairwiseTransformerPanel",".","The","transformer","list","can","be","unnamed","-","a","simple","list","of","transformers","-","or","string","named","-","a","list","of","pairs","of","string",",","estimator",".","For","a","list","of","transformers","`","trafo1","`",",","`","trafo2","`",",","...",",","`","trafoN","`","and","an","estimator","`","est","`",",","the","pipeline","behaves","as","follows",":","`","transform","(","X",")","`","-","running","`","trafo1.fit_transform","`","on","`","X","`",",","them","`","trafo2.fit_transform","`","on","the","output","of","`","trafo1.fit_transform","`",",","etc","sequentially",",","with","`","trafo","[","i","]","`","receiving","the","output","of","`","trafo","[","i-1","]","`",".","Then","passes","output","of","`","trafo","[","N","]","`","to","`","pw_trafo.transform","`",",","as","`","X","`",".","Same","chain","of","transformers","is","run","on","`","X2","`","and","passed",",","if","not","`","None","`",".","`","PwTrafoPanelPipeline","`","can","also","be","created","by","using","the","magic","multiplication","on","any","parameter","estimator",":","if","`","pw_t","`","is","`","BasePairwiseTransformerPanel","`",",","and","`","my_trafo1","`",",","`","my_trafo2","`","inherit","from","`","BaseTransformer","`",",","then",",","for","instance",",","`","my_trafo1","*","my_trafo2","*","pw_t","`","will","result","in","the","same","object","as","obtained","from","the","constructor","`","PwTrafoPanelPipeline","(","pw_trafo=pw_t",",","transformers=","[","my_trafo1",",","my_trafo2","]",")","`","magic","multiplication","can","also","be","used","with","(","str",",","transformer",")","pairs",",","as","long","as","one","element","in","the","chain","is","a","transformer","Parameters","--","--","--","--","--","pw_trafo",":","pairwise","panel","transformer",",","i.e.",",","estimator","inheriting","from","BasePairwiseTransformerPanel","this","is","a","``","blueprint","''","estimator",",","state","does","not","change","when","`","fit","`","is","called","transformers",":","list","of","sktime","transformers",",","or","list","of","tuples","(","str",",","transformer",")","of","sktime","transformers","these","are","``","blueprint","''","transformers",",","states","do","not","change","when","`","fit","`","is","called","Examples","--","--","--","--",">",">",">","from","sktime.dists_kernels.compose","import","PwTrafoPanelPipeline",">",">",">","from","sktime.dists_kernels.dtw","import","DtwDist",">",">",">","from","sktime.transformations.series.exponent","import","ExponentTransformer",">",">",">","from","sktime.datasets","import","load_unit_test",">",">",">",">",">",">","X",",","_","=","load_unit_test","(",")",">",">",">","X","=","X","[","0:3","]",">",">",">","pipeline","=","PwTrafoPanelPipeline","(","DtwDist","(",")",",","[","ExponentTransformer","(",")","]",")",">",">",">","dist_mat","=","pipeline.transform","(","X",")"]
docstr: Return testing parameter settings for the estimator.
  
  Parameters
  ----------
  parameter_set : str, default="default"
      Name of the set of test parameters to return, for use in tests. If no
      special parameters are defined for a value, will return `"default"` set.
      There are currently no reserved values for distance/kernel transformers.
  
  Returns
  -------
  params : dict or list of dict, default = {}
      Parameters to create testing instances of the class
      Each dict are parameters to construct an "interesting" test instance, i.e.,
      `MyClass(**params)` or `MyClass(**params[i])` creates a valid test instance.
      `create_test_instance` uses the first (or only) dictionary in `params`
docstr_tok: ["Return","testing","parameter","settings","for","the","estimator",".","Parameters","--","--","--","--","--","parameter_set",":","str",",","default=","''","default","''","Name","of","the","set","of","test","parameters","to","return",",","for","use","in","tests",".","If","no","special","parameters","are","defined","for","a","value",",","will","return","`","``","default","''","`","set",".","There","are","currently","no","reserved","values","for","distance\/kernel","transformers",".","Returns","--","--","--","-","params",":","dict","or","list","of","dict",",","default","=","{","}","Parameters","to","create","testing","instances","of","the","class","Each","dict","are","parameters","to","construct","an","``","interesting","''","test","instance",",","i.e.",",","`","MyClass","(","*","*","params",")","`","or","`","MyClass","(","*","*","params","[","i","]",")","`","creates","a","valid","test","instance",".","`","create_test_instance","`","uses","the","first","(","or","only",")","dictionary","in","`","params","`"]
code: def get_test_params(cls, parameter_set="default"):
      """Return testing parameter settings for the estimator.
  
      Parameters
      ----------
      parameter_set : str, default="default"
          Name of the set of test parameters to return, for use in tests. If no
          special parameters are defined for a value, will return `"default"` set.
          There are currently no reserved values for distance/kernel transformers.
  
      Returns
      -------
      params : dict or list of dict, default = {}
          Parameters to create testing instances of the class
          Each dict are parameters to construct an "interesting" test instance, i.e.,
          `MyClass(**params)` or `MyClass(**params[i])` creates a valid test instance.
          `create_test_instance` uses the first (or only) dictionary in `params`
      """
      from sktime.dists_kernels.compose_tab_to_panel import (
          AggrDist,
          FlatDist,
      )
      from sktime.transformations.series.boxcox import BoxCoxTransformer
      from sktime.transformations.series.exponent import (
          ExponentTransformer,
      )
  
      # transformer has no fit, two transformers, list without names
      params1 = {
          "pw_trafo": AggrDist.create_test_instance(),
          "transformers": [
              ExponentTransformer(),
              ExponentTransformer(3),
          ],
      }
  
      # transformer has fit, 1 transformer, name/estimator pair list
      params2 = {
          "pw_trafo": FlatDist.create_test_instance(),
          "transformers": [("boxcox", BoxCoxTransformer())],
      }
  
      return [params1, params2]
  
file_path: sktime/sktime/dists_kernels/compose.py
imports: from sktime.base import _HeterogenousMetaEstimator
  from sktime.dists_kernels.base import BasePairwiseTransformerPanel
  from sktime.transformations.base import BaseTransformer
  from sktime.transformations.compose import TransformerPipeline
label_desc: Use image node_id 8 for calling the PwTrafoPanelPipeline obj's underlying member method code with example usage: obj.get_test_params(cls, parameter_set) and returns: list