Skip to contents

Functions for resampling signal data to different sampling rates. Resample signal data

Usage

resample(
  x,
  target_rate,
  method = c("linear", "spline", "fft"),
  assay_name = NULL,
  output_assay = "resampled"
)

Arguments

x

A PhysioExperiment object.

target_rate

Target sampling rate in Hz.

method

Resampling method: "linear" (default), "spline", or "fft".

assay_name

Optional assay name. If NULL, uses the default assay.

output_assay

Name for the output assay. Default is "resampled".

Value

A new PhysioExperiment object with sampling rate set to target_rate. The time dimension is adjusted to match the new rate while preserving the signal duration. Column data and metadata are carried over from the input.

Details

Resamples the signal data to a target sampling rate using interpolation. Supports linear interpolation, spline interpolation, and FFT-based resampling (zero-padding or truncation in the frequency domain).

References

Crochiere, R.E. & Rabiner, L.R. (1983). "Multirate Digital Signal Processing." Prentice Hall.

See also

decimate() for integer-factor downsampling with anti-aliasing, interpolate() for integer-factor upsampling, setAssaySamplingRate() for per-assay rate tracking.