Skip to contents

Computes the analytic signal using the Hilbert transform. The analytic signal can be used to extract instantaneous amplitude and phase.

Usage

hilbertTransform(x, output_assay = "analytic")

Arguments

x

A PhysioExperiment object.

output_assay

Name for the output assay.

Value

A PhysioExperiment object with an additional assay (default "analytic") containing the complex-valued analytic signal.

References

Oppenheim, A.V. & Willsky, A.S. (1997). "Signals and Systems." 2nd ed. Prentice Hall.

See also

instantaneousAmplitude() to extract the signal envelope, instantaneousPhase() to extract the instantaneous phase, plv() for phase-based connectivity.

Examples

pe <- PhysioExperiment(
  assays = list(raw = matrix(rnorm(500 * 4), nrow = 500)),
  samplingRate = 100
)

# Compute Hilbert transform
pe <- hilbertTransform(pe)

# Extract amplitude and phase
pe <- instantaneousAmplitude(pe)
pe <- instantaneousPhase(pe)