Seed-based Resting State Analysis

AFNI experts,

I am analyzing resting state analysis using the seed-based method. I am interested in looking at executive function network using seed as inferior frontal gyrus. I was able to do everything correctly until proc py using poc py explanation of AFNI. However, I am not sure if the rest of the steps have been done correctly. Could you please check the below scripts and let me know if these have been done okay or if I have missed any?

1. Below was used to extract the seed region from each participant.

#!/bin/tcsh

foreach subj (ls -d /path/subjectID* | sed 's/\// /g' | awk '{print $2}')
foreach cond (cond1 cond2)
echo "subj = " ${subj} ", cond = " ${cond}
cd /path/${subj}/${subj}.${cond}/Proc_results
rm -rf EFmask* EF.* EF_* LIFGmask* RIFGmask* Bilat_IFGmask+tlrc Bilat_IFG.ts.1D Bilat_IFG_corr* Bilat_IFG.ts.1D Bilat*

echo “-46 8 26” | 3dUndump -prefix IFGmask1 -srad 5 -master errts.${subj}.${cond}.fanaticor+tlrc -xyz -
echo “46 8 26” | 3dUndump -prefix IFGmask2 -srad 5 -master errts.${subj}.${cond}.fanaticor+tlrc -xyz -

3dcalc -a IFGmask1+tlrc -b IFGmask2+tlrc -expr ‘step(a) + 2*step(b)’ -prefix IFGmask+tlrc
3dmaskave -quiet -mask IFGmask+tlrc. errts.${subj}.${cond}.fanaticor+tlrc > IFG.ts.1D
3dfim+ -bucket IFG_corr -out Correlation -ideal_file IFG.ts.1D -input errts.${subj}.${cond}.fanaticor+tlrc
3dcalc -a IFG_corr+tlrc -exp ‘atanh(a)’ -prefix IFG_r2z

@ linenum++
end
end

2. Below was used to get mean.

#!/bin/tcsh

foreach subj (ls -d /path/subjectID* | sed 's/\// /g' | awk '{print $2}')
foreach cond (cond1 cond2)

echo "subj = " ${subj} ", cond = " ${cond}

cd /path/${subj}/${subj}.${cond}/Proc_results
cp IFG_r2z+tlrc.HEAD /path/rsFC_MAPS/IFG_r2z.${subj}.${cond}+tlrc.HEAD

@ linenum++
end
end

3. 3dLME was used to see statistical analysis (group*condition)

#!/bin/sh

3dLME -prefix EF_Sleep
-jobs 4
-model ‘GroupCond’
-ranEff ‘~1’
-SS_type 3
-num_glt 4
-gltLabel 1 ‘AEx-ARest’ -gltCode 1 'Group : 1
A Cond : 1Ex -1Rest’
-gltLabel 2 ‘BEx-BRest’ -gltCode 2 ‘Group : 1B Cond : 1Ex -1Rest’
-gltLabel 3 ‘ARest-BRest’ -gltCode 3 'Group : 1
A -1B Cond : 1Rest’
-gltLabel 4 ‘AEx-BEx’ -gltCode 4 ‘Group : 1A -1B Cond : 1*Ex’
-mask /path/GM_mask/GM_mask_2009c+tlrc
-dataTable
Subj Group Cond InputFile
AES101 A Ex /path/AES101/AES101.Ex/Proc_results/IFG_r2z+tlrc
AES101 A Rest /path/AES101/AES101.Rest/Proc_results/IFG_r2z+tlrc
AES102 B Ex /path/AES102/AES102.Ex/Proc_results/IFG_r2z+tlrc
AES102 B Rest /path/AES102/AES102.Rest/Proc_results/IFG_r2z+tlrc
AES104 A Ex /path/AES104.Ex/Proc_results/IFG_r2z+tlrc
AES104 A Rest /path/AES104.Rest/Proc_results/IFG_r2z+tlrc
AES107 B Ex /path/AES107/AES107.Ex/Proc_results/IFG_r2z+tlrc
AES107 B Rest /path/AES107/AES107.Rest/Proc_results/IFG_r2z+tlrc \

Thank you in advance for your help!

Do you have missing data? If not, you may consider using 3dMVM instead of 3dLME by replacing

3dLME -prefix EF_Sleep \
-jobs 4 \
-model ‘Group*Cond’ \
-ranEff ‘~1’ \
-SS_type 3 \
-num_glt 4 \

with

3dMVM -prefix EF_Sleep \
-jobs 4 \
-bsVars ‘Group’
-wsVars ‘Cond’ \

Hi Gang,

Thank you so much for your help. Can I have a couple of more questions?

  1. Could you let me know why would you recommend 3dMVM instead of 3dLME?
  2. I am wondering how to get cluester threshold for 3dMVM results. Would it be same as 3dLME?
  3. Could you let me know if the steps before 3dMVM look fine?

Thank you,
Jun

Jun,

  1. Could you let me know why would you recommend 3dMVM instead of 3dLME?

3dMVM is for typical ANOVA or ANCOVA while 3dLME is used when you have sophisticated situations such as within-subject quantitative variables or missing data.

  1. I am wondering how to get cluester threshold for 3dMVM results. Would it be same as 3dLME?

Use 3dClustSim for cluster-based correction.

  1. Could you let me know if the steps before 3dMVM look fine?

It looks fine to me. In future, consider following examples 9, 9a or 10 in the help of afni_proc.py

Hi Gang,

Thanks again for your help. I have used proc.py 11 for this analysis which is the most modern method. Could you please let me know why would you recommend me 9, 9b, or 10?

Thanks,
Jun

I just didn’t realize there is example 11 in the help.

I see. So would you recommend me to use Example 11 (which is using Freesurfer segmentation)?

Thanks,
Jun