Frequently Asked Questions#

As this starter-kit grows it gets harder to know where to find information, so this page is a collection of frequently asked questions.

Please add to this list!

It will always be 🚧 in construction 🚧 and we really encourage everyone to update it to be more useful. If there’s a question you’ve asked or answered more than twice then it’s an FAQ and it should be in the repository.

Ideally the questions will link to an answer elsewhere in the repository to maximise the different ways of finding out more about BIDS.

Note

For questions related to the BIDS apps, please visit the BIDS apps website.


EEG: How to format Hardware and Software filter fields in a .json?#

In the modality specific sidecar file _eeg.json, we can specify the software and hardware filters that were applied during the collection or processing of the data. Generally, there are two accepted formats for that:

  1. a string containing "n/a", to show that no filter was used or the information on the filter is not available.

  2. a json object containing one object per filter. This filter-specific object contains key-value pairs to describe filter parameters. As per BIDS, all frequencies SHOULD be in Hz. For example a single hardware filter could be specified as:

"HardwareFilters": {"HighpassFilter": {"CutoffFrequency": 0.1}}

For a formatted example on how to deal with this in the BIDS context, please see this template.

EEG: How to specify EEGReference and EEGGround for Biosemi referencing scheme?#

Reference and ground electrodes for EEG data can usually be specified using the EEGReference and EEGGround fields in the modality specific sidecar file _eeg.json. Both fields accept a string value such as "Placed on Cz".

However, some manufacturers use special referencing schemes such as the combination of a “Common Mode Sense” (CMS) and a “Driven Right Leg” (DRL) electrode. This is the case for Biosemi, as further documented on their website.

For a formatted example on how to deal with this in the BIDS context, please see this template.

General: Can I combine BIDS and neurodata without border (NWB)?#

BIDS and NWB are compatible.

An NWB data file is an allowed format in the iEEG-BIDS data structure. This means that one subject (AAA) with a session (BBB) can have a BIDS folder with raw iEEG data in NWB format:

/sub-AAA/ses-BBB/ieeg/sub-AAA_ses-BBB_task-rest_ieeg.nwb

The same subject can have another session (CCC) with raw fMRI data in BIDS:

/sub-AAA/ses-CCC/func/sub-AAA_ses-CCC_task-rest_bold.nii.gz

General: How can I cite BIDS?#

See the specification website for the main publications related to BIDS and its extensions.

BIDS references are centralized in a zotero group.

General: How do I convert my data to BIDS?#

We strongly recommend you pick a BIDS converter to help you convert your data.

A list of converters can be found on the BIDS website

Also look at the list of tutorials and information about conversions.

General: How should I organize data for hyperscanning data?#

Hyperscanning is simultaneous fMRI with multiple subjects (see this paper).

  • See this issue in the bids specification repository for typical hyperscanning data.

See an example below with fMRI data:

sub-01/
    ses-dyadic1/
        func/
            sub-01_ses-dyadic1_*
sub-02/
    ses-dyadic1/
        func/
            sub-02_ses-dyadic1_*
sub-03/
    ses-dyadic2/
        func/
            sub-03_ses-dyadic2_*
sub-04/
    ses-dyadic2/
        func/
            sub-04_ses-dyadic2_*

See an example below with fMRI data:

sub-S001/
    ses-1/
        func/
            sub-S001_ses-1_task-video_acq-dyad001_bold.nii.gz
    ses-2/
sub-S002/
    ses-1/
        func/
            sub-S002_ses-1_task-video_acq-dyad001_bold.nii.gz
    ses-2/
sub-S003/
    ses-1/
        func/
            sub-S003_ses-1_task-video_acq-dyad002_bold.nii.gz
    ses-2/

General: How to import Excel files to TSV file?#

See our sections on TSV files for more information.

See also this bids tool to import and export a participants.tsv file: bids-matlab-tools

General: How to specify the micro sign in MATLAB?#

BIDS requires physical units to be specified according to the SI unit symbol and possibly prefix symbol (for example: mV, μV for milliVolt and microVolt).

The symbol used to indicate µ has unicode U+00B5, which is in MATLAB:

char(181)

or

native2unicode(181, 'latin1')

General: I had to split the testing of one of my participants across 2 days, should I use 2 different session folders to organize the data of that participant?#

No. The session level in the BIDS folder hierarchy can be used to group data that go “logically” together: this means that you can put in the same session folder data that were acquired on different days, but that are “linked” to one another in a way that make sense to how you want to organize your data.

If you want to keep track of what data was acquired when you can use the scans.tsv files.

For some examples, see this issue in the bids-starter kit.

If you deal with EEG data, you may want to read this comment in another issue as well before considering combining recordings acquired on different occasions within the same session folder.

General: I only have nifti files and no dicom. Can I still create a BIDS dataset?#

In theory yes, but it is possible that you will be missing some metadata that is required by the BIDS specification.

A couple of BIDS converters can work with nifti files:

  • bidscoin

  • bidsme

  • explore asl

  • data2bids

See the list of converters here.

However

  • They may not work with the datatype you have (for example not sure that explore ASL can deal with func data).

  • Many of them still expect that you have a json side car for each nifti (BIDSme for example - from the top of my head).

  • They may expect a certain input structure to work efficiently, so we may have to move files around.

Regarding the “missing” JSON files#

Depending on the datatype you are dealing with this can be more of less annoying.

2 examples:

For the most typical anat files, they don’t have any REQUIRED metadata, so you could have just the data files without any accompanying JSON. If you get into more exotic anat files (like for quantitative MRI) then this may become a problem.

For func files you only need TaskName and RepetitionTime and the former you can decide what it is and the latter should be in the Nifti header. So you should be OKish there too.

Obviously you will be missing some metadata that would be required for some type of preprocessing (like slice timing info).

Tips#

  • If you have the PDF with the details of acquisition sequence or a method section from a paper with that data, you could “recover” some extra metadata.

  • SPM dicom import tool usually leaves a couple of metadata in a description field of the nifti header. That can be a problem for data anonymisation but may help you in your case if this is the tool that was used. See an example here

  • If you have to script tings manually rather than using a converter, remember to use pybids path construction tools or the bids matlab equivalent to make your life easier when constructing bids valid filenames.

General: Is there a machine readable version of the BIDS specification?#

Yes. The BIDS specification exist as a schema. The BIDS schema is a machine readable representation of the BIDS Standard. It is (by and large) the BIDS Specification, but written in a declarative form.

The BIDS schema is available in two machine readable formats:

A light-weight introduction to the schema can be found here.

A full description of the schema can be found on this website where you will also find the documentation for the python package to interact with the schema, bidsschematools.

General: Is your data type not covered in the current BIDS specification?#

BIDS extensions proposals (BEPs) aim to extend the BIDS specification to new data types. A list of extensions proposals can be found below.

Guidelines for contributing to these extensions or starting your own can be found in the BIDS Extension Proposals Guide.

If only part of your data is covered under BIDS, an option to allow additional files currently not covered in BIDS to pass the validator is the .bidsignore file, which works just like .gitignore. It allows you to list all the files (or directories, with wildcards) that are not BIDS compliant and should be ignored by the validator. Of course you should still try to adhere to upcoming BEPs and the general BIDS philosophy for file names and metadata where possible, but this gives a little extra flexibility.

raw#

derivative#

metadata#

file format#

General: What does [this word] mean?#

We’re building a glossary to de-jargonise some of the terms you need to know to work with data in BIDS format. Check it out here.

General: What is a json file?#

You can find more information about json (and tsv) files in the Metadata-file-formats page.

General: What liense should I choose for my dataset?#

If you want to know more about what license to choose for your dataset, see the turing way page dedicated to this topic.

If you plan to put your dataset on openneuro, you should use a CC0 or a PDDL license as explained in their FAQ.

MRI: What defacing tools can I use?#

If you want to share your BIDS data set, chances are that you will have to anonymize it and therefore prevent identification of the participants from their anatomical scans. You will need to de-identification (or deface) the anatomical images. There are several options to do that

  • If you already have a valid BIDS data set you can simply use the BIDSonym BIDS app on it. To do that it relies on several tools that you can also use before you have finalized your BIDS data set

Otherwise you can also use:

  • Fieldtrip under matlab can do it.

  • SPM8 and SPM12: when in the batch editor go to: SPM menu --> Util --> Deface

Phenotype: How can I store subject phenotypic data?#

In the phenotype folder, according to the details provided for phenotypes:

bids-root
    phenotype

Please the see work on the BIDS extension proposal for phenotypes for more guidelines.

Phenotype: Is there a standard for epilepsy phenotypes?#

Yes, open this epilepsyClassification2017 and follow the examples in the phenotype templates.


Generated by FAQtory