mne.preprocessing.create_ecg_epochs¶
-
mne.preprocessing.
create_ecg_epochs
(raw, ch_name=None, event_id=999, picks=None, tmin=-0.5, tmax=0.5, l_freq=8, h_freq=16, reject=None, flat=None, baseline=None, preload=True, keep_ecg=False, reject_by_annotation=True, verbose=None)[source]¶ Conveniently generate epochs around ECG artifact events.
- Parameters
- rawinstance of
Raw
The raw data
- ch_name
None
|str
The name of the channel to use for ECG peak detection. If None (default), ECG channel is used if present. If None and no ECG channel is present, a synthetic ECG channel is created from cross channel average. Synthetic channel can only be created from MEG channels.
- event_id
int
The index to assign to found events
- 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 all channels.- tmin
float
Start time before event.
- tmax
float
End time after event.
- l_freq
float
Low pass frequency to apply to the ECG channel while finding events.
- h_freq
float
High pass frequency to apply to the ECG channel while finding events.
- reject
dict
|None
Rejection parameters based on peak-to-peak amplitude. Valid keys are ‘grad’ | ‘mag’ | ‘eeg’ | ‘eog’ | ‘ecg’. If reject is None then no rejection is done. Example:
reject = dict(grad=4000e-13, # T / m (gradiometers) mag=4e-12, # T (magnetometers) eeg=40e-6, # V (EEG channels) eog=250e-6 # V (EOG channels) )
- flat
dict
|None
Rejection parameters based on flatness of signal. Valid keys are ‘grad’ | ‘mag’ | ‘eeg’ | ‘eog’ | ‘ecg’, and values are floats that set the minimum acceptable peak-to-peak amplitude. If flat is None then no rejection is done.
- baseline
tuple
|list
of length 2 |None
The time interval to apply rescaling / baseline correction. If None do not apply it. If baseline is (a, b) the interval is between “a (s)” and “b (s)”. If a is None the beginning of the data is used and if b is None then b is set to the end of the interval. If baseline is equal to (None, None) all the time interval is used. If None, no correction is applied.
- preloadbool
Preload epochs or not (default True). Must be True if keep_ecg is True.
- keep_ecgbool
When ECG is synthetically created (after picking), should it be added to the epochs? Must be False when synthetic channel is not used. Defaults to False.
- reject_by_annotationbool
Whether to reject based on annotations. If True (default), epochs overlapping with segments whose description begins with
'bad'
are rejected. If False, no rejection based on annotations is performed.New in version 0.14.0.
- verbosebool,
str
,int
, orNone
If not None, override default verbose level (see
mne.verbose()
and Logging documentation for more).
- rawinstance of
- Returns
- ecg_epochsinstance of
Epochs
Data epoched around ECG r-peaks.
- ecg_epochsinstance of
See also
Notes
Filtering is only applied to the ECG channel while finding events. The resulting
ecg_epochs
will have no filtering applied (i.e., have the same filter properties as the inputraw
instance).