# pyFTS.common.transformations package

## Module contents

## Submodules

## pyFTS.common.transformations.adapativeexpectation module

## pyFTS.common.transformations.boxcox module

class pyFTS.common.transformations.boxcox.BoxCox(plambda)

  Bases: `pyFTS.common.transformations.transformation.Transformation`

  Box-Cox power transformation

  y’(t) = log( y(t) ) y(t) = exp( y’(t) )

  apply(data, param=None, **kwargs)

    Apply the transformation on input data

    Parameters

      - data – input data

      - param –

      - kwargs –

    Returns

      numpy array with transformed data

  inverse(data, param=None, **kwargs)
    Parameters

      - data – transformed data

      - param –

      - kwargs –

    Returns

      numpy array with inverse transformed data

  property parameters

## pyFTS.common.transformations.differential module

class pyFTS.common.transformations.differential.Differential(lag)

  Bases: `pyFTS.common.transformations.transformation.Transformation`

  Differentiation data transform

  y’(t) = y(t) - y(t-1) y(t) = y(t-1) + y’(t)

  apply(data, param=None, **kwargs)

    Apply the transformation on input data

    Parameters

      - data – input data

      - param –

      - kwargs –

    Returns

      numpy array with transformed data

  inverse(data, param, **kwargs)
    Parameters

      - data – transformed data

      - param –

      - kwargs –

    Returns

      numpy array with inverse transformed data

  property parameters

## pyFTS.common.transformations.normalization module

class pyFTS.common.transformations.normalization.Normalization(**kwargs)

  Bases: `pyFTS.common.transformations.transformation.Transformation`

  apply(data, param=None, **kwargs)

    Apply the transformation on input data

    Parameters

      - data – input data

      - param –

      - kwargs –

    Returns

      numpy array with transformed data

  inverse(data, param=None, **kwargs)
    Parameters

      - data – transformed data

      - param –

      - kwargs –

    Returns

      numpy array with inverse transformed data

  train(data, **kwargs)

## pyFTS.common.transformations.roi module

class pyFTS.common.transformations.roi.ROI(**kwargs)

  Bases: `pyFTS.common.transformations.transformation.Transformation`

  Return of Investment (ROI) transformation. Retrieved from Sadaei and Lee (2014) - Multilayer Stock Forecasting Model Using Fuzzy Time Series

  y’(t) = ( y(t) - y(t-1) ) / y(t-1) y(t) = ( y(t-1) * y’(t) ) + y(t-1)

  apply(data, param=None, **kwargs)

    Apply the transformation on input data

    Parameters

      - data – input data

      - param –

      - kwargs –

    Returns

      numpy array with transformed data

  inverse(data, param=None, **kwargs)
    Parameters

      - data – transformed data

      - param –

      - kwargs –

    Returns

      numpy array with inverse transformed data

## pyFTS.common.transformations.scale module

class pyFTS.common.transformations.scale.Scale(min=0, max=1)

  Bases: `pyFTS.common.transformations.transformation.Transformation`

  Scale data inside a interval [min, max]

  apply(data, param=None, **kwargs)

    Apply the transformation on input data

    Parameters

      - data – input data

      - param –

      - kwargs –

    Returns

      numpy array with transformed data

  inverse(data, param, **kwargs)
    Parameters

      - data – transformed data

      - param –

      - kwargs –

    Returns

      numpy array with inverse transformed data

  property parameters

## pyFTS.common.transformations.smoothing module

class pyFTS.common.transformations.smoothing.AveragePooling(**kwargs)

  Bases: `pyFTS.common.transformations.transformation.Transformation`

  apply(data)

    Apply the transformation on input data

    Parameters

      - data – input data

      - param –

      - kwargs –

    Returns

      numpy array with transformed data

  inverse(data, param=None, **kwargs)
    Parameters

      - data – transformed data

      - param –

      - kwargs –

    Returns

      numpy array with inverse transformed data

class pyFTS.common.transformations.smoothing.ExponentialSmoothing(**kwargs)

  Bases: `pyFTS.common.transformations.transformation.Transformation`

  apply(data, param=None, **kwargs)

    Apply the transformation on input data

    Parameters

      - data – input data

      - param –

      - kwargs –

    Returns

      numpy array with transformed data

  inverse(data, param=None, **kwargs)
    Parameters

      - data – transformed data

      - param –

      - kwargs –

    Returns

      numpy array with inverse transformed data

class pyFTS.common.transformations.smoothing.MaxPooling(**kwargs)

  Bases: `pyFTS.common.transformations.transformation.Transformation`

  apply(data)

    Apply the transformation on input data

    Parameters

      - data – input data

      - param –

      - kwargs –

    Returns

      numpy array with transformed data

  inverse(data, param=None, **kwargs)
    Parameters

      - data – transformed data

      - param –

      - kwargs –

    Returns

      numpy array with inverse transformed data

class pyFTS.common.transformations.smoothing.MovingAverage(**kwargs)

  Bases: `pyFTS.common.transformations.transformation.Transformation`

  apply(data, param=None, **kwargs)

    Apply the transformation on input data

    Parameters

      - data – input data

      - param –

      - kwargs –

    Returns

      numpy array with transformed data

  inverse(data, param=None, **kwargs)
    Parameters

      - data – transformed data

      - param –

      - kwargs –

    Returns

      numpy array with inverse transformed data

## pyFTS.common.transformations.som module

Kohonen Self Organizing Maps for Fuzzy Time Series

class pyFTS.common.transformations.som.SOMTransformation(grid_dimension: Tuple, **kwargs)

  Bases: `pyFTS.common.transformations.transformation.Transformation`

  apply(data: pandas.core.frame.DataFrame, param=None, **kwargs)

    Transform a M-dimensional dataset into a 3-dimensional dataset, where one dimension is the endogen variable If endogen_variable = None, the last column will be the endogen_variable.

    Args:

      data (pd.DataFrame): M-Dimensional dataset endogen_variable (str): column of dataset names (Tuple): names for new columns created by SOM Transformation. param: **kwargs: params of SOM’s train process

      > percentage_train (float). Percentage of dataset that will be used for train SOM network. default: 0.7 leaning_rate (float): leaning rate of SOM network. default: 0.01 epochs: epochs of SOM network. default: 10000

    Returns:

  save_net(filename: str = 'SomNet trained')
  show_grid(graph_type: str = 'nodes_graph', **kwargs)
  train(data: pandas.core.frame.DataFrame, percentage_train: float = 0.7, leaning_rate: float = 0.01, epochs: int = 10000)

## pyFTS.common.transformations.transformation module

class pyFTS.common.transformations.transformation.Transformation(**kwargs)

  Bases: `object`

  Data transformation used on pre and post processing of the FTS

  apply(data, param, **kwargs)

    Apply the transformation on input data

    Parameters

      - data – input data

      - param –

      - kwargs –

    Returns

      numpy array with transformed data

  inverse(data, param, **kwargs)
    Parameters

      - data – transformed data

      - param –

      - kwargs –

    Returns

      numpy array with inverse transformed data

  is_multivariate

    detemine if this transformation can be applied to multivariate data

## pyFTS.common.transformations.trend module