help > Different correlation matrices generated from the same data.
Showing 1-5 of 5 posts
Display:
Results per page:
Aug 1, 2024  03:08 PM | Chihhao Lien
Different correlation matrices generated from the same data.

Dear experts,


It's my first time doing longitudinal analysis with CONN.


According to previous replies to the setting for longitudinal studies, there are 2 approaches.


1:  Enter the different sessions as if they were different subjects (https://www.nitrc.org/forum/forum.php?th...)


2: Enter 2 as the "number of sessions" per subject (https://www.nitrc.org/forum/message.php?... https://www.nitrc.org/forum/message.php?...)


I thought that CONN would generate the same ROI-to-ROI matrices with both approaches since I extracted these matrices from the result of 1st level analysis. However, I got different correlation matrices (Fisher's Z values, extracted from "resultsROI_Subject00*_Condition00*.mat") for my follow-up data.


I tested 4 different settings:


(1) Import HC and patient data at baseline, each subject has 1 session


(2) Import baseline and follow-up data (patients only) as different subjects (e.g. import baseline data as Subject 1-10, and then import follow-up data as Subject 11-20)


(3) Import baseline and follow-up data (patients only) as 2 sessions for 1 subject. Each subject has 2 sessions: baseline and follow-up


(4) Import follow-up data only, each subject has 1 session. 


While comparing the Z matrices for baseline data, (1), (2), and (3) generated the same matrices. However, while focusing on follow-up data, (3) generated different correlation matrices, compared with (2) and (4). 


I plan to extract ROI-to-ROI matrices for other analyses (e.g. graph theory), but I', confused about which setting I should use for my longitudinal data. Does anyone know which one is the better approach?


Best regards,


Chih-Hao


 


 


 

Aug 6, 2024  10:08 PM | Alfonso Nieto-Castanon - Boston University
RE: Different correlation matrices generated from the same data.

Dear Chih-Hao


I imagine one possible explanation for your observations would be the differences caused by different inter-subject normalization results when preprocessing your subjects using your four different approaches (but I would expect this to produce very small differences, so let me know if that is not your case). Mainly in option (3) you would be running a single normalization step jointly across both sessions, while in options (1) (2) and (4) you would be normalizing each session separately. Your observations would be consistent with having used the 'First functional volume as reference' option during normalization, which would cause the joint normalization to be identical to the normalization of the first session alone, but different from the normalization of the second session alone. 


In general, when having multiple sessions the recommendation is to preprocess them all jointly (i.e. option (3)) with the exception of cases when you may expect to find anatomical differences between the sessions (e.g. if the longitudinal data spans a relatively large period of time) when it can be preferable to preprocess each session separately (e.g. you may do that by unchecking the 'all sessions' checkbox when running preprocessing and running one session at a time). In either case I would probably recommend not using the 'First functional volume as reference' option and let instead the reference be computed from the averaged functional data across all sessions (unless of course you had a good reason to do that, e.g. your second functional run may have worse data quality)


Hope this helps


Alfonso


Originally posted by Chihhao Lien:



Dear experts,


It's my first time doing longitudinal analysis with CONN.


According to previous replies to the setting for longitudinal studies, there are 2 approaches.


1:  Enter the different sessions as if they were different subjects (https://www.nitrc.org/forum/forum.php?th...)


2: Enter 2 as the "number of sessions" per subject (https://www.nitrc.org/forum/message.php?... https://www.nitrc.org/forum/message.php?...)


I thought that CONN would generate the same ROI-to-ROI matrices with both approaches since I extracted these matrices from the result of 1st level analysis. However, I got different correlation matrices (Fisher's Z values, extracted from "resultsROI_Subject00*_Condition00*.mat") for my follow-up data.


I tested 4 different settings:


(1) Import HC and patient data at baseline, each subject has 1 session


(2) Import baseline and follow-up data (patients only) as different subjects (e.g. import baseline data as Subject 1-10, and then import follow-up data as Subject 11-20)


(3) Import baseline and follow-up data (patients only) as 2 sessions for 1 subject. Each subject has 2 sessions: baseline and follow-up


(4) Import follow-up data only, each subject has 1 session. 


While comparing the Z matrices for baseline data, (1), (2), and (3) generated the same matrices. However, while focusing on follow-up data, (3) generated different correlation matrices, compared with (2) and (4). 


I plan to extract ROI-to-ROI matrices for other analyses (e.g. graph theory), but I', confused about which setting I should use for my longitudinal data. Does anyone know which one is the better approach?


Best regards,


Chih-Hao


 


 


 



 

Aug 7, 2024  12:08 PM | Chihhao Lien
RE: Different correlation matrices generated from the same data.

Dear Alfonso, 


Thanks for your reply.


Does CONN run the single normalization step jointly across both sessions after preprocessing (during the Setup processing pipeline)?


My data were preprocessed via fMRIprep and we also applied ICA-AROMA denoising (data were smoothed ([6 6 6]) before it). However, I preprocessed my baseline and follow-up data separately since I received them at different times. I will preprocess my baseline and follow-up data together (as longitudinal data with the flag of "--longitudinal"), and see if it solves the problem.


While comparing topological changes over time, options (2) and (3) generate similar results. However, the differences are higher when looking at Z matrices. For example, Z(1:7,1) is [1, 0.4594, -0.1653, 0.0050, 0.0533, 0.1107, -0.3014] while using option (2), and option (3) generated [1, 0.5467, -0.0929, 0.1870, 0.2023, 0.2836, 0.0966] for the same data.


In addition, I have another question. We are also interested in the difference between healthy controls (only baseline data available) and patients at follow-up. In this case, should I import data preprocessed jointly or separately?


Best regards,


Chih-Hao

Aug 9, 2024  02:08 PM | Chihhao Lien
RE: Different correlation matrices generated from the same data.

Dear Alfonso,


Thanks for your suggestions and reply.


We expect anatomical differences between baseline and follow-up due to AD development. Would you suggest option (2) in this case? For example, align both baseline and follow-up data to the same T1 images (the averaged T1 images or the baseline T1 images), then import baseline and follow-up data as different subjects.


I preprocess a few subjects again as longitudinal data (with --longitudinal flag) via fMRIprep. With the --longitudinal flag, T1w images are merged into a single template image using FreeSurfer’s mri_robust_template. This template may be unbiased, or equidistant from all source images, or aligned to the first image (determined lexicographically by session label). (Given that I preprocessed my data via fMRIprep, I'm not able to use the reference computed from the averaged functional data across all sessions.)


I examined the correlation matrices from the 4 options again. 


Option (3) generates the same correlation matrices as option (1), which only imports baseline data, and (4), which only imports follow-up data. However, option (2) still generates different correlation matrices compared with the other options.


For option (2), each subject has "func" and "anat" folders which contain either preprcoessed functional data or preprocessed T1 image. Different sessions (baseline and follow-up) have the same preprocessed T1 image. 


In addition, I noticed that options (3) and (4) automatically use "sub-xxx_space-MNI152NLin2009cAsym_desc-preproc_T1w.nii" instead of "c0sub-xxx_ses-baseline_space-MNI152NLin2009cAsym_desc-preproc_T1w.nii". On the other hand, option (2) load "c0sub-xxx_ses-baseline_space-MNI152NLin2009cAsym_desc-preproc_T1w.nii". 


However, the results are the same if I replace structural images with "c0sub-xxx_ses-baseline_space-MNI152NLin2009cAsym_desc-preproc_T1w.nii".


Best regards,


Chih-Hao


 

Aug 21, 2024  12:08 PM | Chihhao Lien
RE: Different correlation matrices generated from the same data.

Dear Alfonso,


After preprocessing and normalizing 2 sessions to the same T1 image (baseline T1), I get the same correlation matrices from options (2) and (3) now.


Thanks for all your help and replies.


 


Best regards,


Chih-Hao Lien