mne-tools / mne-bids-pipeline

Automatically process entire electrophysiological datasets using MNE-Python.
https://mne.tools/mne-bids-pipeline/
BSD 3-Clause "New" or "Revised" License
133 stars 65 forks source link

Reconsider default of `ch_types` #912

Open hoechenberger opened 3 months ago

hoechenberger commented 3 months ago

Do you think we could change the default to None and simply use all available & supported channel types in this case? Otherwise, I don't know what a good default would look like.

Sure we could add this as an enhancement. At the moment it's not too bad since if users don't specify this they immediately get a clear error message saying they need to specify it (here I've removed ch_types from the ds004229 config):

$ pytest mne_bids_pipeline/ -k ds004229
...
E   ValueError: 1 validation error for user configuration from /home/larsoner/python/mne-bids-pipeline/mne_bids_pipeline/tests/configs/config_ds004229.py
E   ch_types
E     Value should have at least 1 item after validation, not 0 [type=too_short, input_value=[], input_type=list]
E       For further information visit https://errors.pydantic.dev/2.6/v/too_short

but ch_types = None meaning "autodetect and use all" seems like nicer behavior

Originally posted by @larsoner in https://github.com/mne-tools/mne-bids-pipeline/issues/911#issuecomment-2027364824