PennLINC / xcp_d

Post-processing of fMRIPrep, NiBabies, and HCP outputs
https://xcp-d.readthedocs.io
BSD 3-Clause "New" or "Revised" License
79 stars 26 forks source link

Add "27P" and "36P" confound regression options without GSR #1231

Closed LeonDLotter closed 2 months ago

LeonDLotter commented 3 months ago

Summary

It would be great to have the option to run "27P" and "36P" confound regression without global signal regressors. I.e.:

Additional details

Next steps

I admit that I did not look deep into your code. However, adding...

# Get rot and trans values, as well as derivatives and square, WM and CSF.
"27P-nogsr": {
    "strategy": ["motion", "wm_csf"],
    "motion": "full",
    "wm_csf": "basic",
},
# Get rot and trans values, as well as derivatives and square, WM, and CSF.
# Add the square and derivative of the WM and CSF.
"36P-nogsr": {
    "strategy": ["motion", "wm_csf"],
    "motion": "full",
    "wm_csf": "full",
},

...to xcp_d/utils/confounds: load_confound_matrix() plus some higher-level adjustments could suffice?

Thanks and thank you a lot for your great work!

tsalo commented 3 months ago

Thanks for the idea @LeonDLotter. I'll discuss it with the rest of the team. I can't guarantee that we'll support this, but if we do, then we'll need citations for each strategy you want supported. Preferably from papers that have directly benchmarked these strategies against others.

tsalo commented 2 months ago

Sorry for the delay in responding @LeonDLotter. I spoke with @sattertt and @mattcieslak, and I think we have a good way to support what you want without adding more options to XCP-D. Basically, we're going to allow config files that list the columns to use, so users can choose whatever they want.

LeonDLotter commented 2 months ago

Hi @tsalo, thanks so much for considering my request and apologies also from my side for the late response. Your proposed solution seems very sensible and will surely fit my use cases. Thanks a lot!