% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/PipeOpFDAFourier.R
\name{mlr_pipeops_fda.fourier}
\alias{mlr_pipeops_fda.fourier}
\alias{PipeOpFDAFourier}
\title{Fast Fourier Transform Features}
\description{
This \code{PipeOp} extracts Fourier coefficients from functional columns.
For more details, see \code{\link[stats:fft]{stats::fft()}}, which is called internally.
Only the one-sided spectrum is returned since the input is real-valued (Oppenheim and Schafer, 2010).
}
\section{Parameters}{

The parameters are the parameters inherited from \code{\link[mlr3pipelines:PipeOpTaskPreprocSimple]{PipeOpTaskPreprocSimple}},
as well as the following parameters:
\itemize{
\item \code{type} :: \code{character(1)}\cr
Which feature to extract from the Fourier coefficients. \code{"amplitude"} returns the magnitude.
\code{"phase"} returns the phase shift in degrees (values in [-180, 180]). Initial value is \code{"phase"}.
}
}

\examples{
task = tsk("fuel")
po_fourier = po("fda.fourier")
task_fourier = po_fourier$train(list(task))[[1L]]
task_fourier$data()
}
\references{
Oppenheim, V A, Schafer, W R (2010).
\emph{Discrete-Time Signal Processing}, 3rd edition.
Pearson.
ISBN 978-0131988422.
}
\section{Super classes}{
\code{\link[mlr3pipelines:PipeOp]{mlr3pipelines::PipeOp}} -> \code{\link[mlr3pipelines:PipeOpTaskPreproc]{mlr3pipelines::PipeOpTaskPreproc}} -> \code{\link[mlr3pipelines:PipeOpTaskPreprocSimple]{mlr3pipelines::PipeOpTaskPreprocSimple}} -> \code{PipeOpFDAFourier}
}
\section{Methods}{
\subsection{Public methods}{
  \itemize{
    \item \href{#method-PipeOpFDAFourier-initialize}{\code{PipeOpFDAFourier$new()}}
    \item \href{#method-PipeOpFDAFourier-clone}{\code{PipeOpFDAFourier$clone()}}
  }
}
\if{html}{\out{<details open><summary>Inherited methods</summary>
<ul>
  <li><span class="pkg-link" data-pkg="mlr3pipelines" data-topic="PipeOp" data-id="help"><a href='../../mlr3pipelines/html/PipeOp.html#method-PipeOp-help'><code>mlr3pipelines::PipeOp$help()</code></a></span></li>
  <li><span class="pkg-link" data-pkg="mlr3pipelines" data-topic="PipeOp" data-id="predict"><a href='../../mlr3pipelines/html/PipeOp.html#method-PipeOp-predict'><code>mlr3pipelines::PipeOp$predict()</code></a></span></li>
  <li><span class="pkg-link" data-pkg="mlr3pipelines" data-topic="PipeOp" data-id="print"><a href='../../mlr3pipelines/html/PipeOp.html#method-PipeOp-print'><code>mlr3pipelines::PipeOp$print()</code></a></span></li>
  <li><span class="pkg-link" data-pkg="mlr3pipelines" data-topic="PipeOp" data-id="train"><a href='../../mlr3pipelines/html/PipeOp.html#method-PipeOp-train'><code>mlr3pipelines::PipeOp$train()</code></a></span></li>
</ul>
</details>}}
\if{html}{\out{<hr>}}
\if{html}{\out{<a id="method-PipeOpFDAFourier-initialize"></a>}}
\if{latex}{\out{\hypertarget{method-PipeOpFDAFourier-initialize}{}}}
\subsection{\code{PipeOpFDAFourier$new()}}{
  Initializes a new instance of this Class.
  \subsection{Usage}{
    \if{html}{\out{<div class="r">}}
    \preformatted{PipeOpFDAFourier$new(id = "fda.fourier", param_vals = list())}
    \if{html}{\out{</div>}}
  }
  \subsection{Arguments}{
    \if{html}{\out{<div class="arguments">}}
    \describe{
      \item{\code{id}}{(\code{character(1)})\cr
Identifier of resulting object, default \code{"fda.fourier"}.}
      \item{\code{param_vals}}{(named \code{list()})\cr
List of hyperparameter settings, overwriting the hyperparameter settings that would
otherwise be set during construction. Default \code{list()}.}
    }
    \if{html}{\out{</div>}}
  }
}

\if{html}{\out{<hr>}}
\if{html}{\out{<a id="method-PipeOpFDAFourier-clone"></a>}}
\if{latex}{\out{\hypertarget{method-PipeOpFDAFourier-clone}{}}}
\subsection{\code{PipeOpFDAFourier$clone()}}{
  The objects of this class are cloneable with this method.
  \subsection{Usage}{
    \if{html}{\out{<div class="r">}}
    \preformatted{PipeOpFDAFourier$clone(deep = FALSE)}
    \if{html}{\out{</div>}}
  }
  \subsection{Arguments}{
    \if{html}{\out{<div class="arguments">}}
    \describe{
      \item{\code{deep}}{Whether to make a deep clone.}
    }
    \if{html}{\out{</div>}}
  }
}

}
