如何实现区域灰质体积、皮层厚度、低频振幅等影像学特征的病例-对照分析差异分析
在神经影像学研究中,病例-对照分析(case-control analysis)是一种常见的方法,用于比较患者组(cases)与健康对照组(controls)在脑结构和功能上的差异。本文介绍如何利用病例-对照分析对**区域灰质体积(GMV,、皮层厚度(CT)及低频振幅(ALFF)进行统计分析。
1. 数据准备与预处理
1.1 影像数据获取
结构 MRI(T1 加权)—— 用于计算 GMV 和 CT
功能 MRI(rs-fMRI)—— 用于计算 ALFF
1.2 预处理流程
使用 CAT12(SPM 工具箱)、Freesurfer、DPABI 进行数据预处理,包括:
CAT12(基于 SPM):
GMV 计算:分割 T1w 图像,归一化至 MNI 空间,计算体积并进行平滑处理(FWHM = 8 mm)。
CT 计算:投影到皮层表面,计算皮层厚度。
Freesurfer:使用 recon-all 处理 T1w 数据,提取皮层厚度。
DPABI(基于 rs-fMRI 处理):ALFF 计算:经过时间校正、头动校正、归一化、去噪后,在 0.01-0.1 Hz 频段计算 ALFF 并进行 Z 转换。
2. 统计分析
2.1 组间差异检验
在影像学研究中,一般线性模型(GLM, General Linear Model) 是常用的统计方法之一。
GLM 通过构建预测变量与因变量之间的线性关系,评估组别效应及其他协变量对影像学特征的影响。例如,在病例-对照分析中,可将影像学特征(如灰质体积、皮层厚度或功能活动)作为预测变量,而年龄、性别、组别、教育程度等临床变量作为因变量。
GLM 允许控制协变量的影响,从而准确评估组别差异是否显著。最终,通过统计检验(如 F 检验或 t 检验),可以确定哪些脑区的影像学特征在不同组别之间存在显著差异。
2.2 代码实现——核心命令fitlm
clc
clear all
%set code folder path
path='G:\yourpath\';
%% load clinical information
% 临床变量表整理为3列,第一列为sex (0代表女性,1代表男性)。第二列为age, 第三列为组别信息。
clinical = importdata(strcat(mypath,'clinical_information/Cov_HC_Patients.xlsx'));
ClinicalInfrom = clinical.data;
sex = ClinicalInfrom(:,1);
age = ClinicalInfrom(:,2);
group = ClinicalInfrom(:,3);
cons=find(group==1);
pats=find(group==2);
%% load HC data
X_RS=load(strcat(mypath,'data/HC_ALFF.mat'));
HC_FC = X_RS.ALFF;
n_ROI = size(HC_FC,1);
%% load Patients data
X_RS=load(strcat(mypath,'data/Patients_ALFF.mat'));
Patients_FC = X_RS.ALFF;
FC_data = [HC_FC,Patients_FC];
group_T_value=zeros(n_ROI,1);
group_P_value=zeros(n_ROI,1);
for i=1:n_ROI
tbl = table(age,sex,group,FC_data(i,:)');
tbl.sex = categorical(tbl.sex);
lm = fitlm(tbl,'Var4~age+sex+group');
%% age and group 的交互效应
% lm = fitlm(tbl,'Var4~age*group+sex');
group_T_value(i)=lm.Coefficients{4,3};
group_P_value(i)=lm.Coefficients{4,4};
end
%%Bonferroni FDR
group_correct_P=mafdr(group_P_value,'BHFDR',1); %fdr
group_result=[group_T_value group_P_value group_correct_P];
group_sigregs_FDR_ALFF = find(group_correct_P<0.05)
%% save results
xlswrite(strcat('G:\yourpath\Case-control_ALFF.xlsx'),group_result)