Skip to content

read_raw_eeglab fails to take eog param into account when setting montage #10505

@sappelhoff

Description

@sappelhoff

Describe the bug

When reading a raw EEGLAB format data file that contains:

  1. EOG channels
  2. channel locations

and when setting the eog parameter of the read_raw_eeglab function,
then a warning is raised:

RuntimeWarning: Not setting positions of 2 eog channels found in montage:
['VEOG', 'HEOG']
Consider setting the channel types to be of EEG/sEEG/ECoG/DBS/fNIRS using inst.set_channel_types before calling inst.set_montage, or omit these channels when creating your montage.
raw = mne.io.read_raw_eeglab(fname_set, eog=["VEOG", "HEOG"])

Steps to reproduce

  1. download EMP01.set and EMP01.fdt from https://uni-muenster.sciebo.de/s/zg2U8xVNZbRHqzg?path=%2Feeg_eeglab
  2. run the following code:
# %%
import mne

fpath = "~/Downloads/EMP01.set"

# this raises the warning
raw = mne.io.read_raw_eeglab(fpath, eog=["VEOG", "HEOG"])

# NOTE: this passes fine (but VEOG and HEOG have the eeg ch_type instead of the correct eog ch_type)
raw = mne.io.read_raw_eeglab(fpath)

Expected results

No warning should be raised, because the function already has the information about eog channels.

Actual results

RuntimeWarning: Not setting positions of 2 eog channels found in montage:
['VEOG', 'HEOG']
Consider setting the channel types to be of EEG/sEEG/ECoG/DBS/fNIRS using inst.set_channel_types before calling inst.set_montage, or omit these channels when creating your montage.
raw = mne.io.read_raw_eeglab(fname_set, eog=["VEOG", "HEOG"])

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions