Try it
Cite it
Unit tests and coverage
BIDS validator and linter
Contributors
A set of function for matlab and octave to create BIDS-compatible folder structure and filenames for the output of behavioral, EEG, fMRI, eyetracking studies.
Subjects, session and run number labels will be numbers with zero padding up to
3 values (e.g subject 1 will become sub-001
).
A session folder will ALWAYS be created even if not requested (default will be
ses-001
).
Task labels will be printed in camelCase in the filenames.
Time stamps are added directly in the filename by adding a suffix
_date-YYYYMMDDHHMM
which makes the file name non-BIDS compliant. This was
added to prevent overwriting files in case a certain run needs to be done a
second time because of a crash (Some of us are paranoid about keeping even
cancelled runs during my experiments). This suffix should be removed to make the
data set BIDS compliant. See convertSourceToRaw.m
for more details.
For example:
sub-090/ses-003/sub-090_ses-003_task-auditoryTask_run-023_events_date-202007291536.tsv
Feel free to open issues to report a bug and ask for improvements.
If you want to contribute, have a look at our contributing guidelines that are meant to guide you and help you get started. If something is not clear or you get stuck: it is more likely we did not do good enough a job at explaining things. So do not hesitate to open an issue, just to ask for clarification.
-
We use camelCase.
-
We keep the McCabe complexity as reported by the check_my_code function below 15.
-
We use the MISS_HIT linter to automatically fix some linting issues.
Here are the naming templates used.
- Behavior
sub-<label>[_ses-<label>]_task-<label>[_acq-<label>][_run-<index>]_events.tsv
sub-<label>[_ses-<label>]_task-<label>[_acq-<label>][_run-<index>]_events.json
sub-<label>[_ses-<label>]_task-<label>[_acq-<label>][_run-<index>]_beh.tsv
sub-<label>[_ses-<label>]_task-<label>[_acq-<label>][_run-<index>]_beh.json
- BOLD
sub-<label>[_ses-<label>]_task-<label>[_acq-<label>][_ce-<label>][_dir-<label>][_rec-<label>][_run-<index>][_echo-<index>]_<contrast_label>.nii[.gz]
- iEEG
sub-<label>[_ses-<label>]_task-<task_label>[_run-<index>]_ieeg.json
- EEG
sub-<label>[_ses-<label>]_task-<label>[_run-<index>]_eeg.<manufacturer_specific_extension>
sub-<label>[_ses-<label>]_task-<label>[_run-<index>]_eeg.json
- MEG
???
- Eyetracker
current format <matches>_recording-eyetracking_physio.tsv.gz
future BEP format in a dedicated eyetracker folder
sub-<participant_label>[_ses-<label>][_acq-<label>]_task-<task_label>_eyetrack.<manufacturer_specific_extension>
- Stim and physio
<matches>[_recording-<label>]_physio.tsv.gz
<matches>[_recording-<label>]_physio.json
<matches>[_recording-<label>]_stim.tsv.gz
<matches>[_recording-<label>]_stim.json
Thanks goes to these wonderful people (emoji key):
CerenB 💻 🎨 📖 📓 🤔 🐛 |
marcobarilari 💻 🎨 📖 📓 🤔 🐛 |
Remi Gau 💻 🎨 📖 🐛 📓 🤔 🚇 🚧 |
This project follows the all-contributors specification. Contributions of any kind welcome!