mne.time_frequency.psd_welch¶
-
mne.time_frequency.psd_welch(inst, fmin=0, fmax=inf, tmin=None, tmax=None, n_fft=256, n_overlap=0, n_per_seg=None, picks=None, proj=False, n_jobs=1, reject_by_annotation=True, average='mean', verbose=None)[source]¶ Compute the power spectral density (PSD) using Welch’s method.
Calculates periodograms for a sliding window over the time dimension, then averages them together for each channel/epoch.
- Parameters
- instinstance of
EpochsorRaworEvoked The data for PSD calculation.
- fmin
float Min frequency of interest.
- fmax
float Max frequency of interest.
- tmin
float|None Min time of interest.
- tmax
float|None Max time of interest.
- n_fft
int The length of FFT used, must be
>= n_per_seg(default: 256). The segments will be zero-padded ifn_fft > n_per_seg. If n_per_seg is None, n_fft must be <= number of time points in the data.- n_overlap
int The number of points of overlap between segments. Will be adjusted to be <= n_per_seg. The default value is 0.
- n_per_seg
int|None Length of each Welch segment (windowed with a Hamming window). Defaults to None, which sets n_per_seg equal to n_fft.
- picks
str|list|slice|None Channels to include. Slices and lists of integers will be interpreted as channel indices. In lists, channel type strings (e.g.,
['meg', 'eeg']) will pick channels of those types, channel name strings (e.g.,['MEG0111', 'MEG2623']will pick the given channels. Can also be the string values “all” to pick all channels, or “data” to pick data channels. None (default) will pick good data channels(excluding reference MEG channels).- projbool
Apply SSP projection vectors. If inst is ndarray this is not used.
- n_jobs
int The number of jobs to run in parallel (default 1). Requires the joblib package.
- reject_by_annotationbool
Whether to omit bad segments from the data before fitting. If
True(default), annotated segments whose description begins with'bad'are omitted. IfFalse, no rejection based on annotations is performed.Has no effect if
instis not amne.io.Rawobject.New in version 0.15.0.
- average
str|None How to average the segments. If
mean(default), calculate the arithmetic mean. Ifmedian, calculate the median, corrected for its bias relative to the mean. IfNone, returns the unaggregated segments.New in version 0.19.0.
- verbosebool,
str,int, orNone If not None, override default verbose level (see
mne.verbose()and Logging documentation for more). If used, it should be passed as a keyword-argument only.
- instinstance of
- Returns
- psds
ndarray, shape (…, n_freqs) or (…, n_freqs, n_segments) The power spectral densities. If
average='meanoraverage='median'and input is of type Raw or Evoked, then psds will be of shape (n_channels, n_freqs); if input is of type Epochs, then psds will be of shape (n_epochs, n_channels, n_freqs). Ifaverage=None, the returned array will have an additional dimension corresponding to the unaggregated segments.- freqs
ndarray, shape (n_freqs,) The frequencies.
- psds
Notes
New in version 0.12.0.