Multivariate age-related variations in quantitative MRI maps: widespread age-related differences revisited.
The 7 matches · all tie a paragraph to a whole file, not to given lines: weak matches, whose lines are not tinted
- [1] § Methods › Participants and spatial preprocessing ↔ crc_qMRIage_defaults.m, the whole file · a weak match · score 0.78 · Tissue weighted smoothing, tissue class, qMRI, MTsat, DARTEL, VBQ
- [2] § Methods › ROI analyses ↔ SM_code/step7-extractROIsBasedOnAAL3Atlas/sm_extract_ROIs.m, the whole file · a weak match · score 0.77 · AAL3 atlas, ROI masks, heschl, precentral, thalamus, pallidum
- [3] § Methods › ROI analyses ↔ SM_code/step8-calculateMediansWithinEachROI/SM_create_median_age_table.m, the whole file · a weak match · score 0.68 · quantitative map, heschl, precentral, thalamus, pallidum, motor
- [4] § Results › ROI analyses › Canonical vectors ↔ SM_code/step11-canonical_clusters/SM_calc_canonical_val_mean.m, the whole file · a weak match · score 0.56 · canonical vectors, quantitative map, MTsat, voxel, GM
- [5] § Methods › Multivariate GLM (mGLM) › Canonical correlation analysis ↔ SM_code/step11-canonical_clusters/SM_calc_canonical_val_mean.m, the whole file · a weak match · score 0.55 · canonical variates, Canonical vectors
- [6] § Methods › Participants and spatial preprocessing ↔ crc_qMRIage_main.m, the whole file · a weak match · score 0.54 · tissue class, qMRI, MNI, masks, WM, GM
- [7] § Results › ROI analyses › Canonical vectors ↔ SM_code/step13-maskCanonicalvect_ROIs/SM_extract_peak_from_MSPM.m, the whole file · a weak match · score 0.52 · canonical vectors, peak voxel, ROI, GM, map
Paper
Loaded from Europe PMC by your browser, not stored by OSCR: doi.org · Europe PMC
The paper is loaded when this pane is shown.
The authors' code
MATLAB · 64 lines · 2.7 KB · GPL-2.0 · 2 matches
- function SM_calc_canonical_val_mean(quant_map_pattern, base_path, canonical_path, out_path)
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- % This function generates and saves canonical variate images based on the
- % z-scored quantitative maps. It uses the canonical vector image, derived from
- % the multivariateSPM in MSPM, and multiply it by the quantitative map values,
- % Then, it takes the mean out of all cacnonical variates. The output image
- % is the mean canonical vector lenght (canonical variate) for each voxel,
- % that represents the contribution of the quantitative map in the
- % MultivariateSPM model
- %
- % Parameters:
- % quant_map_pattern - regex pattern to select quantitative maps (e.g., '^z_sub.*GMsmo_PDmap.nii')
- % base_path - base directory of the project
- % canonical_path - full path to the canonical vectors (SPM .nii images)
- % out_path - output directory to save canonical variate images
- %
- % Example usage:
- %
- % quant_map_pattern = '^z_sub.*GMsmo_MTsat.nii';
- % base_path = fullfile('/Users/smoallemian/Desktop/Manuscripts/Moallemian_et_al_Aging_2025');
- % canonical_path = fullfile(base_path,'statistical analysis','MultivariateSPM', 'GM', 'L_01_c01');
- % out_path = fullfile(base_path, 'statistical analysis','CanonicalVariates', 'MTsat');
- %%%%%%%%%%%%%%%%%%%%%%%
- % Select quantitative maps
- quant_maps = spm_select('FPListRec', fullfile(base_path, 'data', 'derivatives', 'VBQ_TWsmooth'), ...
- quant_map_pattern);
- % Select canonical variate images
- canonical_vecs = spm_select('FPListRec', canonical_path, '^spm_CVL.*.nii');
- % Create output directory if it doesn't exist
- if ~exist(out_path, 'dir')
- mkdir(out_path);
- end
- % Process each canonical vector
- for can_jj = 1:size(canonical_vecs, 1)
- can_vol = spm_vol(canonical_vecs(can_jj, :));
- can_mat = spm_read_vols(can_vol);
- can_variate_sum = zeros(size(can_mat)); % Initialize volume
- % Multiply each quant map with the canonical vector
- for map_ii = 1:size(quant_maps, 1)
- map_vol = spm_vol(quant_maps(map_ii, :));
- map_mat = spm_read_vols(map_vol);
- can_variate_sum = can_variate_sum + (map_mat .* can_mat);
- end
- % Average across maps
- can_variate_mean = can_variate_sum / size(quant_maps, 1);
- % Prepare output file
- out_vol = can_vol;
- [~, can_vec_name, ~] = fileparts(canonical_vecs(can_jj, :));
- out_vol.fname = fullfile(out_path, ['CanonicalVariate_' can_vec_name '.nii']);
- % Save the NIfTI file
- spm_write_vol(out_vol, can_variate_mean);
- end
- fprintf('Canonical variate images saved to: %s\n', out_path);
- end
SM_calc_canonical_val_mean.m at commit 70aa467, under GPL-2.0 · at the source
Overview
- GIGA-CRC Human Imaging, University of Liège, Liège, Belgium
- Center for Molecular and Behavioral Neuroscience, Rutgers University–Newark, Newark, NJ, United States
- Department of Imaging Neuroscience, UCL Queen Square Institute of Neurology, University College London, London, United Kingdom
Abstract
This study applied multivariate ANOVA to investigate age-related microstructural changes in the brain tissues driven primarily by myelin, iron, and water content, as observed in MRI (semi-)quantitative R1, R2*, MTsat and PD maps. This is effectively a re-analysis of the data analyzed in a univariate way in a previous publication. Voxel-wise analyses were performed on gray matter (GM) and white matter (WM), in addition to region of interest (ROI) analyses. The multivariate approach identified brain regions showing coordinated alterations in multiple tissue properties and demonstrated bidirectional correlations between age and all examined modalities in various brain regions, including the caudate nucleus, putamen, insula, cerebellum, lingual gyri, hippocampus, and olfactory bulb. The multivariate model was more sensitive than univariate analyses, as evidenced by detecting a larger number of significant voxels within clusters in the supplementary motor area, frontal cortex, hippocampus, amygdala, occipital cortex, and cerebellum bilaterally. Though when cross validating the results by splitting the data into 2 subsets, sensitivity is strongly reduced, even more so for the multivariate approach. The examination of normalized, smoothed, and z-transformed maps within the ROIs revealed concurrent age-dependent alterations in myelin, iron, and water content. These findings contribute to our understanding of age-related brain differences and provide insights into the underlying mechanisms of aging. The study emphasizes the importance of multivariate analysis for detecting subtle microstructural changes associated with aging when dealing with multiple quantitative MRI parameter maps.
Reproduced under the paper's license (CC BY), from the paper cited above.
Repository
Its files are read in the Code ↔ Paper reader above, with 7 matches between paragraphs and lines of code.
CyclotronResearchCentre/qMRI_MSPM_AgeFx
70aa4674d7fb5ed328c177bdbdbafcdc88340e67, 28 May 2026Availability: 1 check, the latest on 28 September 2026: the link answers
- 28 September 2026: the link answers
68 files
- MBatch_1Sttest_empty.m, MATLAB, 41 lines
- SM_code/
step1-unzip/ , MATLAB, 51 linesSM_unzipp_derivatives.m - SM_code/
step10-takeUnionofSPMs/ , MATLAB, 21 linesMatlabBatch_SM_union.m - SM_code/
step11-canonical_cluster , MATLAB, 64 lines, 2 matchess/ SM_calc_canonical_val_me an.m - SM_code/
step12-maskMSPMROIs/ , MATLAB, 61 linesSM_extract_peak_from_MSP M.m - SM_code/
step13-maskCanonicalvect , MATLAB, 86 lines, 1 match_ROIs/ SM_extract_peak_from_MSP M.m - SM_code/
step14-takeDifferenceUni , MATLAB, 34 linesonSPMs-MSPM/ sm_take_difference.m - SM_code/
step15-pearsonCorrelatio , MATLAB, 60 linesn/ SM_AllROIsMedianVals.m - SM_code/
step15-pearsonCorrelatio , MATLAB, 64 linesn/ SM_extractROIMedianAcros sMaps.m - SM_code/
step16-voxelCount/ , MATLAB, 27 linesSM_count_N_voxels.m - SM_code/
step17-onlySPMorMSPM/ , MATLAB, 29 linesSM_take_only_voxels_in_o ne_image.m - SM_code/
step18-countNumVoxelsAnd , MATLAB, 50 linesClusters/ SM_Voxel_Cluster_count.m - SM_code/
step2-zscoring/ , MATLAB, 64 linesSM_run_within_voxel_z_sc oring_for_all_maps.m - SM_code/
step2-zscoring/ , MATLAB, 61 lineswithin_voxel_z_scoring.m - SM_code/
step2-zscoring/ , MATLAB, 62 linesz_scoring.m - SM_code/
step3-univariateSPManaly , MATLAB, 9 linessis/ MATLABbatch_OneSample_t_ test_GM_MTsat.m - SM_code/
step3-univariateSPManaly , MATLAB, 733 linessis/ MATLABbatch_OneSample_t_ test_GM_MTsat_job.m - SM_code/
step3-univariateSPManaly , MATLAB, 9 linessis/ MATLABbatch_OneSample_t_ test_GM_PDmap.m - SM_code/
step3-univariateSPManaly , MATLAB, 733 linessis/ MATLABbatch_OneSample_t_ test_GM_PDmap_job.m - SM_code/
step3-univariateSPManaly , MATLAB, 9 linessis/ MATLABbatch_OneSample_t_ test_GM_R1map.m - SM_code/
step3-univariateSPManaly , MATLAB, 733 linessis/ MATLABbatch_OneSample_t_ test_GM_R1map_job.m - SM_code/
step3-univariateSPManaly , MATLAB, 9 linessis/ MATLABbatch_OneSample_t_ test_GM_R2starmap.m - SM_code/
step3-univariateSPManaly , MATLAB, 733 linessis/ MATLABbatch_OneSample_t_ test_GM_R2starmap_job.m - SM_code/
step3-univariateSPManaly , MATLAB, 9 linessis/ MATLABbatch_OneSample_t_ test_WM_MTsat.m - SM_code/
step3-univariateSPManaly , MATLAB, 733 linessis/ MATLABbatch_OneSample_t_ test_WM_MTsat_job.m - SM_code/
step3-univariateSPManaly , MATLAB, 9 linessis/ MATLABbatch_OneSample_t_ test_WM_PDmap.m - SM_code/
step3-univariateSPManaly , MATLAB, 733 linessis/ MATLABbatch_OneSample_t_ test_WM_PDmap_job.m - SM_code/
step3-univariateSPManaly , MATLAB, 9 linessis/ MATLABbatch_OneSample_t_ test_WM_R1map.m - SM_code/
step3-univariateSPManaly , MATLAB, 733 linessis/ MATLABbatch_OneSample_t_ test_WM_R1map_job.m - SM_code/
step3-univariateSPManaly , MATLAB, 9 linessis/ MATLABbatch_OneSample_t_ test_WM_R2starmap.m - SM_code/
step3-univariateSPManaly , MATLAB, 733 linessis/ MATLABbatch_OneSample_t_ test_WM_R2starmap_job.m - SM_code/
step4-multivariateModeli , MATLAB, 9 linesng/ MATLABbatch_mspm_GM.m - SM_code/
step4-multivariateModeli , MATLAB, 12 linesng/ MATLABbatch_mspm_GM_job. m - SM_code/
step4-multivariateModeli , MATLAB, 9 linesng/ MATLABbatch_mspm_WM.m - SM_code/
step4-multivariateModeli , MATLAB, 12 linesng/ MATLABbatch_mspm_WM_job. m - SM_code/
step4-multivariateModeli , MATLAB, 78 linesng/ function_run.m - SM_code/
step5-multivariateSPMana , MATLAB, 9 lineslysis/ MATLABbatch_Analyze_mspm _GM.m - SM_code/
step5-multivariateSPMana , MATLAB, 6 lineslysis/ MATLABbatch_Analyze_mspm _GM_job.m - SM_code/
step5-multivariateSPMana , MATLAB, 9 lineslysis/ MATLABbatch_Analyze_mspm _WM.m - SM_code/
step5-multivariateSPMana , MATLAB, 6 lineslysis/ MATLABbatch_Analyze_mspm _WM_job.m - SM_code/
step6-createSignificantC , MATLAB, 53 lineslustersMasks/ sm_cluster_masks.m - SM_code/
step7-extractROIsBasedOn , MATLAB, 31 lines, 1 matchAAL3Atlas/ sm_extract_ROIs.m - SM_code/
step8-calculateMediansWi , MATLAB, 75 linesthinEachROI/ SM_MedianCalc_For_an_ROI .m - SM_code/
step8-calculateMediansWi , MATLAB, 75 lines, 1 matchthinEachROI/ SM_create_median_age_tab le.m - SM_code/
step8-scatterplots/ , MATLAB, 111 linessm_scatter_ROI.m - SM_code/
step8-scatterplots/ , MATLAB, 62 linessm_scatter_ROI_INPUTS.m - SM_code/
step8-scatterplots/ , MATLAB, 159 linessm_scatter_ROI_left_righ t.m - SM_code/
step8-scatterplots/ , MATLAB, 170 linessm_scatter_ROI_z_scored_ left_right.m - SM_code/
step8-scatterplots/ , MATLAB, 54 linessm_scatter_ROI_z_scored_ left_right_INPUTS.m - SM_code/
step8-scatterplots/ , MATLAB, 165 linessm_scatter_ROI_z_scored_ left_right_mean.m - SM_code/
step8-scatterplots/ , MATLAB, 58 linessm_scatter_ROI_z_scored_ left_right_mean_INPUTS.m - SM_code/
step9-scatterPlotMedianv , MATLAB, 104 linessAgeWithinEachROI/ SM_scatterPlots.m - cp_scripts.m, MATLAB, 77 lines
- crc_CohenKappaImg.m, MATLAB, 66 lines
- crc_check_allCK.m, MATLAB, 117 lines
- crc_gunzip.m, MATLAB, 98 lines
- crc_gzip.m, MATLAB, 98 lines
- crc_qMRIage_01_prepdata.
m , MATLAB, 27 lines - crc_qMRIage_02_zscoring.
m , MATLAB, 141 lines - crc_qMRIage_03_uSPM.m, MATLAB, 134 lines
- crc_qMRIage_04_mSPM.m, MATLAB, 74 lines
- crc_qMRIage_05_signifClu
sVxl.m , MATLAB, 231 lines - crc_qMRIage_CrossVal.m, MATLAB, 77 lines
- crc_qMRIage_defaults.m, MATLAB, 73 lines, 1 match
- crc_qMRIage_main.m, MATLAB, 110 lines, 1 match
- crc_save_matlabbatch.m, MATLAB, 58 lines
- LICENSE, License, 339 lines
- README.md, Text, 63 lines
The paper's code and data availability statement is in the Data section.
Tracing map
Proposed by the machine: these links were found in the paper and verified at the source, without human review. The map will receive a Zenodo DOI once one of the paper's authors has validated it with their ORCID.
What the map holds:
- 1 repository of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
- 66 scripts, each with its path and the digest of its content;
- 7 matches between paragraphs of the paper and lines of the code (method lexical-v1);
- neither the text of the paper nor the code itself.
Its JSON (tracing-map.json) is deposited on Zenodo with its DOI once the map is validated.
Data
Datasets cited
- doi:10.18112/
openneuro.ds005851.v1.0. , at OpenNeuro; found in “Data availability statement”0
Data availability statement
The data supporting this study is available on Open Neuro: https://
Reproduced under the paper's license (CC BY), from the paper cited above.
Versions
The history of this record: each version stored by the harvester or made by a correction of its authors or of the maintainers of its code, and what changed in its facts. The texts of the paper (its abstract, its availability statements) are not part of it; versions that changed only those are not listed.
Version 1, 28 September 2026: the first record
Recorded: type, language, journal, volume, pages, dates, 4 authors, 6 keywords, 1 funder, 29 references.
Cite
This paper
Moallemian, S., Bastin, C., Callaghan, M. F., & Phillips, C. (2026). Multivariate age-related variations in quantitative MRI maps: widespread age-related differences revisited. Frontiers in neuroscience, 20, 1770672. https://
BibTeX
@article{moallemian2026m
author = {Moallemian, Soodeh and Bastin, Christine and Callaghan, Martina F and Phillips, Christophe},
title = {{Multivariate age-related variations in quantitative MRI maps: widespread age-related differences revisited}},
journal = {Frontiers in neuroscience},
year = {2026},
month = may,
volume = {20},
pages = {1770672},
publisher = {Frontiers Media SA},
issn = {1662-4548},
doi = {10.3389/
url = {https://
pmid = {42232654},
pmcid = {PMC13223175}
}
RIS
TY - JOUR
AU - Moallemian, Soodeh
AU - Bastin, Christine
AU - Callaghan, Martina F
AU - Phillips, Christophe
TI - Multivariate age-related variations in quantitative MRI maps: widespread age-related differences revisited
T2 - Frontiers in neuroscience
J2 - Front Neurosci
PY - 2026
DA - 2026/
VL - 20
SP - 1770672
SN - 1662-4548
PB - Frontiers Media SA
DO - 10.3389/
UR - https://
LA - en
ER -
CSL-JSON
{
"id": "10.3389/
"type": "article-journal",
"title": "Multivariate age-related variations in quantitative MRI maps: widespread age-related differences revisited",
"container-title": "Frontiers in neuroscience",
"author": [
{
"family": "Moallemian",
"given": "Soodeh"
},
{
"family": "Bastin",
"given": "Christine"
},
{
"family": "Callaghan",
"given": "Martina F"
},
{
"family": "Phillips",
"given": "Christophe"
}
],
"container-title-short":
"volume": "20",
"page": "1770672",
"DOI": "10.3389/
"PMID": "42232654",
"PMCID": "PMC13223175",
"ISSN": "1662-4548",
"publisher": "Frontiers Media SA",
"URL": "https://
"language": "en",
"issued": {
"date-parts": [
[
2026,
5,
18
]
]
}
}
The tracing map gets a citation of its own once an author has validated it and it has a DOI.
Similar papers
The papers with a page that share the most with this one: the tools found in their code, their categories, datasets, cited references and authors, the rarest counting most.
- [1] doi:10.1016/j.nicl.2026.104039 [code]
- The quest for the best: manual, atlas- and spatial prior-based delineation of locus coeruleus.Journal: NeuroImage. ClinicalIn common: structural MRI / diffusion, 5 references
- [2] doi:10.1093/cercor/bhag058 [code]
- Visual field inhomogeneities and the architectonics of early visual cortex shape visual working memory.Journal: Cerebral cortex (New York, N.Y. : 1991)In common: structural MRI / diffusion, 4 references
- [3] doi:10.1038/s41467-026-71414-y [code]
- Bed nucleus of the stria terminalis connectivity during food cue and taste processing under stress.Journal: Nature communicationsIn common: SPM, Statistics and Machine Learning Toolbox, 2 references
- [4] doi:10.1002/nbm.70305 [code]
- Reducing Noise Induced by Cardiac Pulsatility in Brain Maps of R&
lt;sub& gt;2& lt;/ sub& gt;* and Magnetic Susceptibility Using Tailored k-space Sampling. Journal: NMR in biomedicineIn common: SPM, structural MRI / diffusion, 2 references - [5] doi:10.1038/s41467-026-74153-2 [code]
- Regional, functional and transcriptomic decoding of multidimensional brain structure alterations in obsessive-compulsive disorder.Journal: Nature communicationsIn common: SPM, cellular / molecular, 2 references
- [6] doi:10.1002/hbm.70562 [code]
- Distinct Physiological Mechanisms Drive Grey Matter Plasticity in Complex Versus Simple Sequence Learning.Journal: Human brain mappingIn common: SPM, structural MRI / diffusion, 2 references
- [7] doi:10.1002/gps3.70014 [code]
- Correspondence between morphological similarity of the left lateral orbitofrontal cortex and neurotransmitter systems in adolescent males with autism.Journal: General psychiatryIn common: SPM, Statistics and Machine Learning Toolbox, structural MRI / diffusion, 1 reference
- [8] doi:10.1162/imag.a.1174 [code]
- Retinal nerve fibre layer thickness reflects characteristics of brain grey and white matter.Journal: Imaging neuroscience (Cambridge, Mass.)In common: SPM, structural MRI / diffusion, 2 references
- [9] doi:10.1038/s41593-026-02359-0 [code]
- The cross-site reproducibility of MRI morphometric phenotypes in psychiatric disorders.Journal: Nature neuroscienceIn common: SPM, Statistics and Machine Learning Toolbox, structural MRI / diffusion, 1 reference
- [10] doi:10.1093/braincomms/fcag134 [code]
- Neurophysiological, imaging and neurobiological markers of central fatigue in multiple sclerosis.Journal: Brain communicationsIn common: SPM, Statistics and Machine Learning Toolbox, structural MRI / diffusion, 1 reference
Contribute
The authors of this paper can claim it, correct its record and validate its tracing map, and the maintainers of its code (its owner, or a public member of its organization) correct what it says of their repository; anyone signed in can ask for its removal. Every request goes to OSCR's own machine, which answers it; your account page follows them.
Sign in with ORCID to claim this paper as one of its authors, correct its record or validate its tracing map: when the paper's metadata lists your ORCID iD, you are recognized at once. Maintainers of its code: sign in with GitHub, then claim the repository on your account page.
Claim this paper
Correct its record
Say what each link of this record is, remove the ones that are not the paper's, add the ones that are missing. The correction becomes a new version of the record, in its Versions section.
Validate its tracing map
You validate the map as this page shows it: 1 repository of the authors' code, each at its verified commit and with its license, 66 scripts, and 7 matches between paragraphs and code (see the Code and Map sections). It then receives a DOI on Zenodo, with you (your ORCID iD) and OSCR as its creators; the code itself is not deposited.
The map's fingerprint: sha256:a3b374d481ec11ea…
Add the badge to its README
The badge links the code to this page. Copy one of these into the README of the paper's code: only you decide where it goes, and nothing is changed for you.
Markdown
[, paste the snippet at the top, then “Commit changes…” and, to review it first, “Create a new branch and start a pull request”. You open the pull request; OSCR asks for no permission.
Request its removal
To ask OSCR to remove this record, the copies of its authors' scripts or its tracing map, use the removal request page: signed in, you say who you are, what to remove and why, then review and confirm the request. Published rules decide every request (how).
Discussion, reproductions, activity
Discussion: questions and error reports about this paper and its code, from signed-in readers and its authors. It opens with sign-in.
Reproductions: reports from readers who ran the authors' code: what they reproduced, with which environment, commit and data. It opens with sign-in.
Activity: what happens around this paper: new versions of its record, its map's validation, discussions and reproductions. It opens with sign-in.
