医学统计系列教程:相关分析的规范实践——Pearson与Spearman相关在糖尿病患者血糖血脂关联研究中的应用
【摘要】 相关分析是探索变量间关联强度与方向的核心统计方法,Pearson相关与Spearman相关分别适用于不同数据分布特征的场景。临床科研中常存在“忽视数据分布特征盲目选择方法、混淆相关与因果、结果报告不规范”等问题,导致研究结论可信度不足。本文以120例2型糖尿病患者空腹血糖(FPG)与血脂指标(总胆固醇TC、低密度脂蛋白LDL-C等)的相关性分析为例,系统阐述Pearson与Spearman相关的适用场景、前提验证、规范操作流程(R与SPSS实操)、结果解读及SCI规范化报告要点,并总结常见误区与规避建议,为临床科研工作者提供可直接复用的统计分析方案。
一、引言
在2型糖尿病临床研究中,血糖与血脂代谢紊乱的关联分析是揭示疾病发病机制、指导综合管理的重要环节。相关分析可量化FPG与TC、LDL-C等指标的关联强度,但方法选择需严格匹配数据分布特征:Pearson相关依赖双变量正态分布假设,而Spearman相关为非参数方法,适用于非正态或有序分类数据。临床实践中,部分研究者因忽视前提验证、误用方法或过度解读结果(将相关等同于因果),导致研究结论偏倚。本文结合具体案例,明确两种相关分析方法的规范应用流程,助力提升科研数据处理的可靠性与论文投稿通过率。
二、研究设计与数据特征
(一)研究对象
回顾性纳入某院2023年1月至2024年1月确诊的2型糖尿病患者120例,其中男68例、女52例,平均年龄(56.8±10.2)岁,平均病程(8.5±3.6)年。纳入标准:符合《中国2型糖尿病防治指南(2022年版)》诊断标准;临床资料完整(含FPG、TC、LDL-C、HbA1c等指标检测结果)。排除标准:合并严重肝肾功能不全、恶性肿瘤、急性感染或其他内分泌疾病;近3个月接受调脂药物或影响血糖代谢的药物治疗。本研究经医院伦理委员会批准(伦理批号:2023-012)。
(二)研究指标与数据类型
核心研究指标均为连续型计量资料:
1. 自变量/因变量:空腹血糖(FPG,mmol/L),反映血糖控制水平;
2. 关联指标:总胆固醇(TC,mmol/L)、低密度脂蛋白胆固醇(LDL-C,mmol/L)、糖化血红蛋白(HbA1c,%),均为血脂及血糖长期控制相关指标。
研究目的:探索FPG与TC、LDL-C、HbA1c的关联强度与方向,构建四指标相关矩阵。
三、统计方法与规范实操
本研究数据采用R 4.3.0软件(Hmisc包)与SPSS 26.0软件分析,检验水准α=0.05。相关分析核心流程:先验证数据分布特征→选择对应相关方法→构建相关矩阵→规范解读结果。
(一)前提验证:数据分布特征判断
相关方法选择的核心依据是变量分布特征,采用Shapiro-Wilk检验(样本量n<50)或Kolmogorov-Smirnov检验(样本量n≥50)结合Q-Q图可视化验证正态性:
1. FPG:Shapiro-Wilk检验P=0.18>0.05,Q-Q图数据点近似贴合对角线→符合正态分布;
2. TC:Shapiro-Wilk检验P=0.25>0.05→符合正态分布;
3. LDL-C:Shapiro-Wilk检验P=0.01<0.05,Q-Q图数据点偏离对角线→不符合正态分布;
4. HbA1c:Shapiro-Wilk检验P=0.08>0.05→符合正态分布。
(二)Pearson相关分析(FPG与TC:双变量均正态)
1. 适用条件
① 双变量均为连续型计量资料;② 双变量均符合正态分布;③ 变量间呈线性关联(可通过散点图验证:FPG与TC散点图呈线性趋势,无明显曲线关系)。
2. 规范实操步骤
❶ R语言实操(含正态性验证与相关分析):
# 1. 安装并加载所需包
install.packages(c("Hmisc", "car"))
library(Hmisc)
library(car)
# 2. 导入数据并预处理(缺失值采用多重插补法填补)
diabetes_data <- read.csv("2型糖尿病患者数据.csv")
diabetes_data[,c("FPG","TC","LDL_C","HbA1c")] <- mice::complete(mice(diabetes_data[,c("FPG","TC","LDL_C","HbA1c")], m=5, method="pmm"), 1)
# 3. 正态性检验
norm_test <- function(var) {
test_result <- shapiro.test(diabetes_data[[var]])
return(data.frame(指标=var, P值=round(test_result$p.value, 2), 正态性判断=ifelse(test_result$p.value>0.05, "符合", "不符合")))
}
norm_results <- rbind(norm_test("FPG"), norm_test("TC"), norm_test("LDL_C"), norm_test("HbA1c"))
print(norm_results)
# 4. 验证线性关联(散点图)
plot(diabetes_data$FPG, diabetes_data$TC, main="FPG与TC散点图", xlab="空腹血糖(mmol/L)", ylab="总胆固醇(mmol/L)")
abline(lm(TC~FPG, data=diabetes_data), col="red") # 添加线性趋势线
# 5. Pearson相关分析
pearson_result <- cor.test(diabetes_data$FPG, diabetes_data$TC, method="pearson")
# 6. 提取结果
cat("FPG与TC Pearson相关系数r:", round(pearson_result$estimate, 2), "\n")
cat("P值:", round(pearson_result$p.value, 3), "\n")
cat("95%置信区间:", round(pearson_result$conf.int, 2), "\n")
❷ SPSS实操步骤:
1. 导入数据,进入【分析】→【相关】→【双变量】;
2. 将“FPG”“TC”移入“变量”框;
3. 相关系数勾选“Pearson”,勾选“双尾检验”“标记显著性相关”;
4. 点击【选项】,勾选“描述性”(获取变量均值±标准差);点击【绘制】,勾选“散点图”(X:FPG,Y:TC),勾选“拟合线”;
5. 点击【确定】,输出结果。
3. 结果解读
检验结果:FPG与TC呈正相关(r=0.35,P<0.001,95%置信区间:0.21~0.48)。
解读要点:
1. 关联方向:r=0.35>0→正相关(FPG升高时,TC倾向于升高);
2. 关联强度:根据Cohen标准,|r|=0.2~0.4为弱到中等相关,此处r=0.35,属于弱到中等正相关;
3. 统计显著性:P<0.001<0.05,95%置信区间不包含0→相关性具有统计学意义;
4. 临床意义:提示2型糖尿病患者血糖与总胆固醇代谢存在关联,临床管理中可同步关注血糖与血脂控制,避免单一指标管理导致的代谢紊乱漏诊。
(三)Spearman相关分析(FPG与LDL-C:单变量非正态)
1. 适用条件
① 变量为连续型、有序分类型或离散型;② 至少一个变量不符合正态分布;③ 无需满足线性关联假设(适用于任意单调关联)。本案例中LDL-C非正态,故采用Spearman相关。
2. 规范实操步骤
❶ R语言实操:
# Spearman相关分析(method="spearman")
spearman_result <- cor.test(diabetes_data$FPG, diabetes_data$LDL_C, method="spearman")
# 提取结果
cat("FPG与LDL-C Spearman相关系数rs:", round(spearman_result$estimate, 2), "\n")
cat("P值:", round(spearman_result$p.value, 3), "\n")
❷ SPSS实操步骤:
1. 进入【分析】→【相关】→【双变量】;
2. 将“FPG”“LDL-C”移入“变量”框;
3. 相关系数勾选“Spearman”,勾选“双尾检验”“标记显著性相关”;
4. 点击【确定】,输出结果。
3. 结果解读
检验结果:FPG与LDL-C呈正相关(rs=0.28,P=0.002)。
解读要点:
1. Spearman相关系数用rs表示,区别于Pearson的r;
2. 关联方向与强度:rs=0.28>0,为弱正相关;
3. 统计显著性:P=0.002<0.01→相关性具有统计学意义;
4. 临床意义:尽管LDL-C分布非正态,但仍提示FPG与低密度脂蛋白胆固醇存在正向关联,低密度脂蛋白胆固醇是动脉粥样硬化的危险因素,提示糖尿病患者血糖控制不佳可能增加心血管并发症风险。
(四)相关矩阵构建与SCI规范化报告
1. 相关矩阵构建(多变量两两关联分析)
采用R语言Hmisc包rcorr()函数或SPSS双变量相关分析,同时完成FPG、TC、LDL-C、HbA1c的两两相关分析,构建相关矩阵(含相关系数与P值):
❶ R代码:
# 构建相关矩阵(自动根据变量分布选择方法,此处手动指定对应方法)
# 先筛选变量
vars <- c("FPG","TC","LDL_C","HbA1c")
# 构建矩阵
corr_matrix <- rcorr(as.matrix(diabetes_data[,vars]))
# 提取相关系数和P值,保留2位/3位小数
corr_coef <- round(corr_matrix$r, 2)
corr_p <- round(corr_matrix$P, 3)
# 输出结果
print("相关系数矩阵:")
print(corr_coef)
print("P值矩阵:")
print(corr_p)
2. SCI规范化报告(三线表)
相关分析结果需以三线表形式呈现,明确标注相关系数类型(r/rs)、P值及显著性标记,规范表格如下:
**表1 2型糖尿病患者FPG与血脂、HbA1c的相关矩阵**

*注:1. 相关系数标注:FPG与TC、HbA1c,TC与LDL-C、HbA1c为Pearson相关系数(r值);FPG与LDL-C为Spearman相关系数(rs值);2. 显著性标记:*P<0.05,**P<0.01;3. 样本量n=120*
四、常见误区与实操建议
(一)核心误区规避
1. 忽视数据分布特征:非正态数据盲目使用Pearson相关,导致相关系数偏差,低估/高估关联强度;
2. 混淆相关与因果:将“FPG与TC相关”解读为“血糖升高导致胆固醇升高”,忽视体重、饮食、运动等混杂因素的影响,相关仅表示关联,不代表因果关系;
3. 未验证线性关联:Pearson相关依赖线性假设,若变量间呈曲线关系(如U型),盲目使用会导致结果偏倚;
4. 结果报告不规范:未标注相关系数类型(r/rs)、遗漏P值或显著性标记,SCI期刊审稿易被打回;
5. 样本量不足导致结果不可靠:相关分析建议样本量n≥50,样本量过小会降低检验效能,导致假阴性结果。
(二)实操建议
1. 流程优先:严格遵循“分布验证→方法选择→矩阵构建→结果解读”流程,避免跳过前提验证;
2. 可视化辅助:用Q-Q图验证正态性、散点图验证线性关联,提升结果可信度;
3. 结果报告完整:需同时呈现“相关系数(r/rs)+P值+95%置信区间+显著性标记”,多变量分析需提供相关矩阵;
4. 结合临床意义解读:避免“唯相关系数论”,需同步结合医学常识解读关联的临床价值,如FPG与LDL-C的正相关提示糖尿病患者需同步控制血糖与血脂,降低心血管并发症风险;
5. 控制混杂因素:若需探索潜在因果关系,可在相关分析基础上进一步开展回归分析(如多元线性回归),控制混杂因素后验证关联稳定性。
五、讨论与小结
相关分析是探索2型糖尿病患者血糖与血脂代谢关联的有效工具,方法选择的核心是变量分布特征:双变量均正态且线性关联用Pearson相关,非正态或非线性关联用Spearman相关。本研究案例显示,FPG与TC呈弱到中等正相关(r=0.35,P<0.001),与LDL-C呈弱正相关(rs=0.28,P=0.002),提示血糖与血脂代谢存在协同紊乱,为糖尿病综合管理提供了统计依据。
临床科研工作者在应用相关分析时,需严格规避“忽视前提、混淆相关与因果、报告不规范”等误区,结合可视化工具与临床意义综合解读结果。本文提供的R与SPSS实操代码可直接复用,适用于糖尿病及其他慢性疾病的变量关联分析场景。后续可进一步探讨有序分类变量(如糖尿病病程分级)与连续变量的相关分析,欢迎同仁在评论区交流实操经验与疑问。
















































