External Email - Use Caution
Dear Douglas,
Very good to know this is possible, thank you!
Leonardo Tozzi, MD, PhD
Williams PanLab | Postdoctoral Researcher
Stanford University | 401 Quarry Rd
ltozzi@stanford.edu | (650) 5615738
Connect with us!
From: <freesurfer-bounces@nmr.mgh.harvard.edu> on behalf of "Douglas N. Greve" <dgreve@mgh.harvard.edu>
Reply-To: Freesurfer support list <freesurfer@nmr.mgh.harvard.edu>
Date: Monday, May 10, 2021 at 12:36 PM
To: "freesurfer@nmr.mgh.harvard.edu" <freesurfer@nmr.mgh.harvard.edu>
Subject: Re: [Freesurfer] Cluster correction at subject level using -log10(p) values
If you just have a simple design matrix (not doing any temporal whitening or anything else other than a standard GLM), you can use mri_glmfit. Just pass the design matrix as a text file via --X (instead of using
an FSGD). You'll have to pass contrast matrices as well.
On 5/10/2021 2:23 PM, Leonardo Tozzi wrote:
External Email - Use Caution
Dear Douglas,
Yes, I mean fMRI. I am currently using MATLAB to fit a GLM to the timeseries and then export the p-values as a MGH file of the cortical surface.
Best,
Leonardo Tozzi, MD, PhD
Williams PanLab | Postdoctoral Researcher
Stanford University | 401 Quarry Rd
ltozzi@stanford.edu | (650) 5615738
Connect with us!
From: <freesurfer-bounces@nmr.mgh.harvard.edu> on behalf of "Douglas N. Greve" <dgreve@mgh.harvard.edu>
Reply-To: Freesurfer support list <freesurfer@nmr.mgh.harvard.edu>
Date: Monday, May 10, 2021 at 9:59 AM
To: "freesurfer@nmr.mgh.harvard.edu" <freesurfer@nmr.mgh.harvard.edu>
Subject: Re: [Freesurfer] Cluster correction at subject level using -log10(p) values
when you say time series, do you mean like fMRI? What are you using to do the time series analysis?
On 5/10/2021 12:56 PM, Leonardo Tozzi wrote:
External Email - Use Caution
Dear Douglas,
The reason is that I am running a GLM at the subject level on 4D fMRI timeseries. Thus, I obtain a parameter estimate on each vertex, which I can then enter in a contrast to obtain a p-value per vertex. These are the p-values I want to correct.
From what I understand, the mri_glmfit does not work on timeseries data, am I wrong in this? So at the moment I am fitting the GLM in matlab and using the mcsim to correct the p-values I obtain.
Best,
Leonardo Tozzi, MD, PhD
Williams PanLab | Postdoctoral Researcher
Stanford University | 401 Quarry Rd
ltozzi@stanford.edu | (650) 5615738
Connect with us!
From: <freesurfer-bounces@nmr.mgh.harvard.edu> on behalf of "Douglas N. Greve" <dgreve@mgh.harvard.edu>
Reply-To: Freesurfer support list <freesurfer@nmr.mgh.harvard.edu>
Date: Monday, May 10, 2021 at 8:32 AM
To: "freesurfer@nmr.mgh.harvard.edu" <freesurfer@nmr.mgh.harvard.edu>
Subject: Re: [Freesurfer] Cluster correction at subject level using -log10(p) values
Is there a reason that you are not using mri_glmfit-sim to do this? It is fairly complicated, and so I spent a lot of time writing mri_glmfit-sim to make sure it does the right thing.
On 4/29/2021 6:16 PM, Leonardo Tozzi wrote:
External Email - Use Caution
Dear Experts,
I am running an analysis where I have -log10(p) values on the cortical surface of some subjects stored as a MGH file.
I would now like to run a cluster level correction on these data at the level of each individual subject using mri_mcsim followed by mri_surfcluster and I would like to constrain my inference to a ROI.
I have a few questions. First of all, is it correct that I should to a -log10(p) transform on my p values before entering them in mri_surfcluster?
Second, will the csd generated by mcsim be valid to feed in mri_surfcluster since the values are a -log10(p) transformed? Does mcsim -log transform the gaussian noise it uses at some point or is this not necessary?
My calls to the two methods are as follows (for one hemisphere):
First the mcsim:
mri_mcsim --o “${subject}_mcsim_lh_${roi}" --base mc-z --surface ${subject} lh --nreps 10000 --label $roi
Then the mri_surfcluster:
mri_surfcluster --in "/${subject}_lh_${roi}_neglog10p_signed.mgh" \
--csd "${subject}_mcsim_lh_${roi}/fwhm05/abs/th30/mc-z.csd" \
--clabel "${subject}/label/lh.${roi}.label" \
--cwsig "${subject}_lh_${roi}_neglog10p_abs_clu05.mgh" \
--vwsig "${subject}_lh_${roi}_neglog10p_abs_vox05.mgh" \
--sum "${subject}_lh_${roi}_neglog10p_abs_summary.txt" \
--thmin 3 \
--surf white \
--subject ${subject } \
--hemi lh \
--ocn “${subject}_lh_${roi}_neglog10p_abs_clu05_clunum.mgh" \
--cwpvalthresh 0.05
In the call of mri_surfcluster, I want a cluster forming threshold of p=0.001, which would correspond to -logp(0.001)=3. Is it correct that the argument --thmin should be expressed as -log10(p) but the parameter cwpvalthresh should be p?
The reason why I think I did something wrong is that I get a lot of clusters from this analysis, sometimes >15 per individual. This makes me think that the correction might not be as stringent as I would like to.
Thank you,
Leonardo Tozzi, MD, PhD
Williams PanLab | Postdoctoral Researcher
Stanford University | 401 Quarry Rd
ltozzi@stanford.edu | (650) 5615738
Connect with us!
_______________________________________________Freesurfer mailing listFreesurfer@nmr.mgh.harvard.eduMailScanner has detected a possible fraud attempt from "secure-web.cisco.com" claiming to be https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
_______________________________________________Freesurfer mailing listFreesurfer@nmr.mgh.harvard.eduMailScanner has detected a possible fraud attempt from "secure-web.cisco.com" claiming to be https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
_______________________________________________Freesurfer mailing listFreesurfer@nmr.mgh.harvard.eduMailScanner has detected a possible fraud attempt from "secure-web.cisco.com" claiming to be https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer