Second level modeling with fsl (within subject across run)


Hi experts,

I am analyzing an fMRI dataset, in which participants have 3 runs of scene viewing and 1 run of object viewing. I want to compare between these two types of runs to select scene-sensitive voxels for next step. However, I have not found documentation about how to perform this kind of analysis with FSL in Nipype. The closest one I found is this. This is different from what I need because I cannot perform first-level comparison between scene and object within runs directly.

I am wondering how can I use Nipype with fsl to run this within subject but across runs analysis? I have finished first level modeling for each run with film_gls (and thus I have t-stat, copes, and other output from film_gls for each run), but am unsure how to arrange these outputs from separate runs into inputs for FLAMEO, as well as how to create the design matrix in Nipype. Is there any documentation related to this issue, and I can use as a reference?

Also, if Nipype with FSL is not the best way to do it, I am open to other suggestions!

Thanks a lot in advance!



If you have conditions separated across runs, then by comparing them you make the strong assumption that the means of the runs are the same, which is often not the case in fMRI. A single run level contrast for a condition is the delta from the mean. if you think these deltas can be compared (generally not advised), then you can model the difference using a simple difference model. condA_run1 - condB_run2. compute these images and then feed them to a group analysis.



Hi Satrajit,

Thanks for the reply! I understand that comparing across runs are not recommended. However, this is the only option I have if I want to select functional ROIs. I have followed the FSL preprocessing pipeline, and set up the medium of each run into a same value (modified from this code), and was hoping this could resolve some of the potential problem in different means across runs.

Thanks for your suggestions!