Description of the problem
Epochs.get_data(picks="eeg") excludes bad channels, but Evoked.get_data(picks="eeg") doesn't
Steps to reproduce
# %%
import mne
sample_dir = mne.datasets.sample.data_path()
sample_fname = sample_dir / "MEG" / "sample" / "sample_audvis_raw.fif"
raw = mne.io.read_raw_fif(sample_fname)
raw.crop(tmax=60)
events = mne.find_events(raw, stim_channel="STI 014")
raw.pick("eeg")
epochs = mne.Epochs(raw, events=events, preload=True)
evoked = epochs.average()
# %%
for inst_type, inst in zip(["epochs", "evoked"], [epochs, evoked]):
print(f"{inst_type}:")
print(f" bads: {inst.info['bads']}")
print(f" data shape: {inst.get_data(picks='eeg').shape}")
Link to data
No response
Expected results
Both methods should behave the same in regards to bad channel treatment.
Actual results
epochs:
bads: ['EEG 053']
data shape: (86, 59, 421)
evoked:
bads: ['EEG 053']
data shape: (60, 421)
As you can see, the data from Evoked contains the bad channel, while the data from Epochs does not.
Additional information
This is with main
Description of the problem
Epochs.get_data(picks="eeg")excludes bad channels, butEvoked.get_data(picks="eeg")doesn'tSteps to reproduce
Link to data
No response
Expected results
Both methods should behave the same in regards to bad channel treatment.
Actual results
As you can see, the data from
Evokedcontains the bad channel, while the data fromEpochsdoes not.Additional information
This is with
main