class_docstr: Panel distance or kernel from applying tabular trafo to flattened time series.
  
  Applies the wrapped tabular distance or kernel to flattened series.
  Flattening is done to a 2D numpy array of shape (n_instances, (n_vars, n_timepts))
  
  Formal details (for real valued objects, mixed typed rows in analogy):
  Let :math:`d:\mathbb{R}^k \times \mathbb{R}^{k}\rightarrow \mathbb{R}`
  be the pairwise function in `transformer`, when applied to `k`-vectors
  (here, :math:`d` could be a distance function or a kernel function).
  Let :math:`x_1, \dots, x_N\in \mathbb{R}^{n \times \ell}`,
  :math:`y_1, \dots y_M \in \mathbb{R}^{n \times \ell}` be collections of matrices,
  representing time series panel valued inputs `X` and `X2`, as follows:
  :math:`x_i` is the `i`-th instance in `X`, and :math:`x_{i, j\ell}` is the
  `j`-th time point, `\ell`-th variable of `X`. Analogous for :math:`y` and `X2`.
  Let :math:`f:\mathbb{R}^{n \times \ell} \rightarrow \mathbb{R}^{n \cdot \ell}`
  be the mapping that flattens matrices by column-first lexicographical ordering,
  and assume :math:`k = n \cdot \ell`.
  
  Then, `transform(X, X2)` returns the :math:`(N \times M)` matrix
  with :math:`(i, j)`-th entry :math:`d\left(f(x_i), f(y_j)\right)`.
  
  Parameters
  ----------
  transformer: pairwise transformer of BasePairwiseTransformer scitype, or
      callable np.ndarray (n_samples, d) x (n_samples, d) -> (n_samples x n_samples)
  
  Examples
  --------
  Euclidean distance between time series of equal length, considered as vectors
  
  >>> from sktime.dists_kernels import FlatDist, ScipyDist
  >>> euc_tsdist = FlatDist(ScipyDist())
  
  Gaussian kernel between time series of equal length, considered as vectors
  
  >>> from sklearn.gaussian_process.kernels import RBF
  >>> flat_gaussian_tskernel = FlatDist(RBF())
class_docstr_tok: ["Panel","distance","or","kernel","from","applying","tabular","trafo","to","flattened","time","series",".","Applies","the","wrapped","tabular","distance","or","kernel","to","flattened","series",".","Flattening","is","done","to","a","2D","numpy","array","of","shape","(","n_instances",",","(","n_vars",",","n_timepts",")",")","Formal","details","(","for","real","valued","objects",",","mixed","typed","rows","in","analogy",")",":","Let",":","math",":","`","d",":","\\mathbb","{","R","}","^k","\\times","\\mathbb","{","R","}","^","{","k","}","\\rightarrow","\\mathbb","{","R","}","`","be","the","pairwise","function","in","`","transformer","`",",","when","applied","to","`","k","`","-vectors","(","here",",",":","math",":","`","d","`","could","be","a","distance","function","or","a","kernel","function",")",".","Let",":","math",":","`","x_1",",","\\dots",",","x_N\\in","\\mathbb","{","R","}","^","{","n","\\times","\\ell","}","`",",",":","math",":","`","y_1",",","\\dots","y_M","\\in","\\mathbb","{","R","}","^","{","n","\\times","\\ell","}","`","be","collections","of","matrices",",","representing","time","series","panel","valued","inputs","`","X","`","and","`","X2","`",",","as","follows",":",":","math",":","`","x_i","`","is","the","`","i","`","-th","instance","in","`","X","`",",","and",":","math",":","`","x_","{","i",",","j\\ell","}","`","is","the","`","j","`","-th","time","point",",","`","\\ell","`","-th","variable","of","`","X","`",".","Analogous","for",":","math",":","`","y","`","and","`","X2","`",".","Let",":","math",":","`","f",":","\\mathbb","{","R","}","^","{","n","\\times","\\ell","}","\\rightarrow","\\mathbb","{","R","}","^","{","n","\\cdot","\\ell","}","`","be","the","mapping","that","flattens","matrices","by","column-first","lexicographical","ordering",",","and","assume",":","math",":","`","k","=","n","\\cdot","\\ell","`",".","Then",",","`","transform","(","X",",","X2",")","`","returns","the",":","math",":","`","(","N","\\times","M",")","`","matrix","with",":","math",":","`","(","i",",","j",")","`","-th","entry",":","math",":","`","d\\left","(","f","(","x_i",")",",","f","(","y_j",")","\\right",")","`",".","Parameters","--","--","--","--","--","transformer",":","pairwise","transformer","of","BasePairwiseTransformer","scitype",",","or","callable","np.ndarray","(","n_samples",",","d",")","x","(","n_samples",",","d",")","-",">","(","n_samples","x","n_samples",")","Examples","--","--","--","--","Euclidean","distance","between","time","series","of","equal","length",",","considered","as","vectors",">",">",">","from","sktime.dists_kernels","import","FlatDist",",","ScipyDist",">",">",">","euc_tsdist","=","FlatDist","(","ScipyDist","(",")",")","Gaussian","kernel","between","time","series","of","equal","length",",","considered","as","vectors",">",">",">","from","sklearn.gaussian_process.kernels","import","RBF",">",">",">","flat_gaussian_tskernel","=","FlatDist","(","RBF","(",")",")"]
code: def __init__(self, transformer):
      self.transformer = transformer
  
      super().__init__()
  
      if isinstance(transformer, BasePairwiseTransformer):
          tags_to_clone = ["capability:missing_values"]
          self.clone_tags(transformer, tags_to_clone)
  
file_path: sktime/sktime/dists_kernels/compose_tab_to_panel.py
imports: import numpy
  from sktime.dists_kernels.base import BasePairwiseTransformer, BasePairwiseTransformerPanel
  from sktime.utils._testing.deep_equals import deep_equals
label_desc: Use image node_id 1 to create a new FlatDist object from inherited base classes: BasePairwiseTransformerPanel with example: obj = FlatDist(transformer)