Second level analysis from native epi maps with nilearn?

With nilearn, is it possible to run 1st level analysis in native epi space, but do the 2nd level in standard space?


Assuming you are doing a standard voxel-level GLM, then you will need your 1st level maps in standard space, otherwise you won’t have voxel-wise correspondance across subjects. You can of course still run 1st level maps in native space if helps for visualization purposes.


Thanks @Steven. In nilearn, compute_contrast() has several types of output: β€˜z_score’, β€˜stat’, β€˜p_value’, β€˜effect_size’, β€˜effect_variance’. Which of these should I bring to standard space?

effect_size is what should be input into your second level maps

1 Like

Thanks @Steven. By the way, what are the other images used for? I suppose they are most useful for second level analysis?

stat is the t-stat images, which relate to effect sizes, but should not normally be used as input to second level analyses. z_score is the normalized t-stat image. p_value is the significance based on these statistics. effect_variance relates to the error.

Indeed, you can output these images for the second level analyses. The stats/p-val images may be thresholded to find β€œsignificant” activation. But the input into second level models should usually be effect size maps from your 1st level models.

1 Like

Hi @Steven, in most tutorials, the maps brought to the second level are called β€œcmaps” (for example, here)
Are these the maps generated with second_level_model.compute_contrast(output_type="effect_size")?

They are typically first-level effect_size maps.