I use nistats to perform a second-level analysis on sMRI data. I am using nistats.thresholding.map_threshold in order to obtain both an unthresholded statistical image and a corresponding threshold for this image. In my script I first used nilearn.plotting.plot_stat_map to plot my thresholded image (with threshold == 'None'):

This problem seems to have something to do with the used colorbar. Intuitively, I would expect both functions to plot the same plot, as plotting an already thresholded image vs. plotting an unthresholded image + providing the corresponding threshold is logically the same. Did I use the functions wrong, is this behavior wanted, or is this a bug?

However, this leaves me with the problem of my earlier post. @bthirion suggested to use two_sided = False, that’s why I used that setting for the analysis.

In general, in my analysis, I have specific hypotheses concerning the effect of groups, age and gender on grey matter density (older people have less grey matter densities, males have more than females, patients less than controls). Statistically, that would allow me to use a one-tailed-test, which means I am ‘allowed’ to divide my observed p-value by 2. I wanted follow this logic for my analyses.

When using two_sided == True it seems that the p-value is multiplied by the factor of 2, which follows a similar logic in the opposite direction (the test becomes more sensitive)

two_sided: Bool, optional,
Whether the thresholding should yield both positive and negative part of the maps. In that case, alpha is corrected by a factor of 2. Defaults to True.

I am not exactly sure, why two_sided controls the presence or absence of positive and negative values. Wouldn’t it make more sense to always present negative and positive values and let two_sided only control the final value for my p-value?