mne_denoise.ssa.ssa_decompose#

mne_denoise.ssa.ssa_decompose(x: ndarray, window_length: int | None = None, *, window_seconds: float | None = None, sfreq: float | None = None, max_window: int = 100) tuple[ndarray, dict[str, Any]][source]#

Decompose a one-dimensional series into Basic SSA components.

Parameters:
xarray-like, shape (n_times,)

Finite scalar time series.

window_lengthint | None, default=None

Embedding dimension in samples. If None, choose it automatically.

window_secondsfloat | None, default=None

Embedding duration in seconds; mutually exclusive with window_length and requiring sfreq.

sfreqfloat | None, default=None

Sampling frequency in Hz, used with window_seconds and automatic selection.

max_windowint, default=100

Maximum automatic embedding dimension.

Returns:
componentsndarray, shape (n_components, n_times)

Reconstructed elementary components in decreasing singular-value order.

infodict

Resolved window, trajectory shape, singular values, and numerical rank.

Raises:
TypeError

If a scalar parameter has an invalid type.

ValueError

If x or the requested embedding is invalid.

Notes

The trajectory matrix is decomposed by SVD and reconstructed by anti-diagonal averaging. [1].

References