How to name physio data acquired before the first MRI run

Hi everyone,

I’m wondering where and how to store the baseline measurements of our physiological data during the MRI sessions.

We recorded cardiac and respiratory data continuously during each session. So far, we’ve split up the recording into files that accompany the respective bold run. However, I’m not sure what to do with the remaining data which was acquired before the first functional run even started.

Should we

  • Not include it?
  • append it to the beginning of the run-01_physio.tsv.gz and indicate the start of the first run with the trigger values?
  • Give it a different name? If so, what would be the convention?

I looked at the BIDS specification but couldn’t find a clear answer.

Any suggestions are very much appreciatd!

I guess it depends on what you want to use it for. I think the two main options are:

  1. As you proposed, include it in your first run’s physio data and make sure StartTime is accurate. This isn’t so much reflected in the trigger as it is in the metadata, although having an accurate trigger is helpful. This is probably the best choice when you’re trying to retain physio data between scans within the MRI session.
  2. Keep it in a separate file and put that file in beh/ (see here). You might want to include a useful label in the acq field (e.g., acq-beforeMRI). This is probably the best choice when you have substantial data in one consecutive chunk before or after scanning, rather than many chunks between scans.

I’ll also ping @smoia to see if he has any insights.

I hope that helps.


Hello @Oliver_Contier!

I agree with @tsalo, it really depends on what you’ll do with that data. If you are applying any approach that consider lags (lagged GLM, cross-correlations, RETROICOR, RVT, … ), then consider including in your first run at least enough time to apply such lagged approaches. Generally, a pad of 30 seconds should be a very generous amount of time for your computations, especially if your respiration is recorded with an instantaneous (digital) device. If you have analogical signals (e.g. gas sampling or a pressure-based belt device), a pad of 60+s would be better. However, if you have 2+ minutes of data and you are not going to use them, you can discard part of them.

If you plan to share these data at any point, then definitely include everything in your files! That initial baseline could be a goldmine for someone (you?) in the future, especially if it’s not too noisy. I would still suggest to generously pad your first session, and if you have anything relevant left, to leave that part in the beh folder @tsalo was suggesting.

If you are adopting BIDS (if you’re not, you should :stuck_out_tongue:), be sure that your StartTime in the sidecar file (the .json file) is correct. If you need help with that (and you have a nice trigger channel or you can make it up), you could have a look at phys2bids and see if it helps!

(BTW, @tsalo, adding the initial part of a multirun file to the beh folder could be a nice addition to phys2bids. Let’s remind each others to open an issue about it!)


Thanks, this is great and answers my question!

Although we won’t be using this additional data immediately, the dataset is meant to be published so we’re trying to make it complete (and of course bids-valid :slight_smile:).