首页/文章/ 详情

大学课程 数据分析 实战之胃癌数据分析(1)

精品
作者优秀平台推荐
详细信息
文章亮点
作者优秀
优秀教师/博士学历/特邀专家/独家讲师
平台推荐
内容稀缺
1月前浏览467

最近看了一篇论文《LPCAT1重编程胆固醇代谢促进食管鳞状细胞癌的进展》,文章中的两个表格激发了我的学习兴趣。看完此文后,如果有医生想做类似的数据分析,可以给我留言,免费!医道是大爱,我们这些工科人士愿意提供技能上的帮助。

表1的结果来源于对154名食管鳞状细胞癌(ESCC)患者的临床数据分析,涉及性别、年龄、肿瘤T分期、N分期、分化程度、肿瘤位置、LPCAT1基因表达(qPCR和IHC)的相关性分析。统计分析采用Cox比例风险回归分析,调整了性别、年龄、TNM分期、肿瘤分化程度及肿瘤位置。

表2的结果则探讨了LPCAT1的mRNA和蛋白表达水平与患者临床病理特征之间的关系,采用χ²检验或Fisher精确检验进行统计分析,以确定LPCAT1的表达是否与患者的性别、年龄、T分期等因素显著相关。对癌症数据进行分析,早期可以集中在数据探索性分析(EDA) 和生存分析上。

数据探索性分析(EDA)

  • 描述性统计:对数据进行描述性统计分析,计算均值、中位数、标准差等。

  • 可视化:使用图表(如柱状图、箱线图、生存曲线等)来探索数据的分布和关系。例如,绘制不同分期的胃癌患者的生存曲线。

生存分析

  • Kaplan-Meier生存曲线:类似于论文中的方法,使用Kaplan-Meier方法绘制生存曲线,比较不同组别(如不同分期、不同治疗方式)的生存率。

  • Log-rank检验:使用Log-rank检验比较不同组别之间的生存率差异,判断其统计学显著性。

  • Cox比例风险模型:构建Cox比例风险模型,分析影响胃癌患者生存时间的独立危险因素。例如,分析年龄、性别、肿瘤分期、治疗方式等对生存时间的影响。

原理分析!

Cox比例风险模型(Cox Proportional Hazards Model) 是一种用于生存分析的半参数回归模型,由David Cox在1972年提出。它用于分析生存数据,估计不同因素对生存时间的影响。Cox模型的核心思想是假设风险函数(hazard function)可以分解为两个部分:

  1. 基准风险函数(Baseline Hazard Function):表示在没有协变量影响的情况下,个体在时间 
    t 时的风险。它是时间的函数,但模型不对其具体形式做任何假设。

  2. 协变量效应(Covariate Effect):表示协变量对风险的影响。Cox模型假设协变量的影响是乘性的,即协变量的影响是通过一个指数函数来调整基准风险。

模型仿真分析!

% 生成基准风险函数(指数分布)

lambda = 0.1; % 指数分布的参数

baseline_hazard = @(t) lambda * exp(-lambda * t);

% 生成生存时间

risk_score = exp(beta_age * age + beta_stage * stage);

% 风险评分

survival_time = exprnd(1 ./ (lambda * risk_score)); 

% 生存时间

% 生成删失数据(假设20%的数据是删失的)

censoring = rand(n, 1) < 0.2; % 20%的数据是删失的

observed_time = survival_time;

observed_time(censoring) = observed_time(censoring) .* rand(sum(censoring), 1); % 删失时间

% 构建生存数据表

data = table(age, stage, observed_time, ~censoring, 'VariableNames', ...

    {'Age', 'Stage', 'Time', 'Status'});

% 拟合Cox比例风险模型

cox_model = fitcox(data, 'Time ~ Age + Stage');

% 显示模型结果

disp(cox_model);

% 绘制生存曲线

figure

plot(cox_model.Hazard);

xlabel('Time');

ylabel('Survival Probability');

title('Cox Proportional Hazards Model - Survival Curve');

legend('Baseline Survival');

Cox 回归分析是一种常用于生存分析的统计方法,其主要用途如下:

1. 评估影响生存时间的因素

Cox 回归分析能够帮助我们 评估多个变量对生存时间的影响,如:

  • 患者的年龄、性别、肿瘤分期(T/N 分期)、治疗方法等因素如何影响生存时间。

  • 是否有某种 生物标志物(如基因表达) 会显著影响患者的生存。

示例应用:

  • 研究 LPCAT1 表达水平 是否会影响食管鳞状细胞癌(ESCC)患者的生存期。

  • 评估 某种治疗方案(如化疗 vs. 免疫治疗) 是否会改善患者生存。

2. 计算风险比(Hazard Ratio, HR)

Cox 回归的核心输出之一是 风险比(HR),它表示某个变量的变化如何影响事件(如死亡)的发生风险:

  • HR > 1:该因素会 增加死亡风险,即生存时间缩短(不良因素)。

  • HR < 1:该因素会 降低死亡风险,即生存时间延长(保护因素)。

  • HR = 1:该因素对生存没有影响。

示例解释:如果 HR = 2.0(T3-T4 vs. T1-T2),说明 T3-T4 期患者死亡风险是 T1-T2 期患者的 2 倍

3. 处理删失数据(Censored Data)

生存数据常常 右删失(Right Censoring),即:

  • 某些患者在研究结束时仍存活,无法直接计算确切的生存时间。

  • Cox 回归可以处理删失数据,不要求所有患者都有完整的生存时间数据

例如:

  • 研究持续 5 年,但某患者仍存活,则其生存时间是 5 年以上(未发生事件)

  • Cox 模型可以利用这些删失数据 提高统计效率

4. 不要求特定的生存分布

  • Cox 回归不需要假设生存时间服从正态分布、指数分布等,与 Kaplan-Meier 方法不同。

  • 仅假设 风险比(HR)在不同时间保持恒定(比例风险假设)

5. 适用于医学、金融、工程等领域

Cox 回归不仅用于医学研究,还广泛应用于:

医学:评估新药、手术、基因等对生存的影响。

金融:分析企业破产、信用违约风险。

工程:预测设备故障、产品寿命。

在进行 Cox 回归分析时,风险比 (HR) 和 p 值是判断模型中各个变量与生存时间关联性的关键指标。它们的解释和有效性标准如下:

1. 风险比 (Hazard Ratio, HR)

风险比表示某个因素在特定条件下的相对风险。HR 的含义如下:

  • HR = 1

    该变量对生存时间没有影响,即风险相对平稳。  
  • HR > 1

    该变量的增加会增加事件发生的风险(例如死亡的风险),即对生存时间有负面影响。  
  • HR < 1

    该变量的增加会降低事件发生的风险,即对生存时间有正面影响,增加生存期。  

2. p 值

p 值用于检验变量的统计显著性。通常,p 值 < 0.05 被视为显著,这意味着我们可以拒绝零假设(即该变量与生存时间无关)。具体来说:

  • p 值 < 0.05

    意味着该变量的系数在统计上显著,说明它可能与生存时间存在显著的关联。  
  • p 值 ≥ 0.05

    表明该变量对生存时间的影响不显著,或者我们无法拒绝零假设。  

3. 有效的结果判断标准

要确定变量与生存时间的关联是否有效,通常可以根据以下标准:

  • HR

    的值应明显偏离 1。如果 HR 接近 1(例如 HR = 0.98 或 HR = 1.02),则说明该变量对生存时间的影响微弱,可能不具备临床意义。  
  • p 值

    应小于 0.05,表示该变量对生存时间的影响是统计显著的。如果 p 值大于 0.05,那么可以认为该变量在模型中不显著,可能对生存时间没有明显的影响。  

总结:

  • HR

    一般来说,HR 与 1 的差距越大,表示该变量对生存时间的影响越明显。HR > 1 时表示风险增加,HR < 1 时表示风险减少。  
  • p 值

    如果 p 值小于 0.05,则认为该变量与生存时间显著相关。  

可以根据上述标准判断 Cox 回归分析结果中各个变量的有效性。如果有多个变量的 p 值都大于 0.05,那么可能需要进一步探讨是否模型中的某些变量不适合,或者是否数据存在多重共线性等问题。

Cox 回归模型在医学研究中的应用!

假设我们有一个胃癌患者数据集(比如 SEER数据库),包含以下变量:

变量名    
说明    
Survival_time
患者生存时间(单位:月)    
Status
是否死亡(1=死亡,0=存活)    
Age
年龄    
T_stage
肿瘤 T 分期    
N_stage
肿瘤 N 分期    
LPCAT1
基因表达(高/低)    

使用 Cox 回归模型分析:

[b, logL, H, stats] = coxphfit([data.Age, data.T_stage, data.N_stage, data.LPCAT1], ...
data.Survival_time, 'Censoring', 1 - data.Status);
HR = exp(b); % 计算风险比
CI_lower = exp(b - 1.96*stats.se);
CI_upper = exp(b + 1.96*stats.se);
fprintf('变量\tHR (95%% CI)\tP值\n');
for i = 1:length(HR)
    fprintf('变量%d\t%.2f (%.2f-%.2f)\t%.3f\n', i, HR(i), CI_lower(i), CI_upper(i), stats.p(i));

end

结果示例:

变量                HR (95% CI)                        P值
年龄               1.05 (1.02-1.08)                   0.003
T 分期              2.10 (1.50-2.94)                 0.002
N 分期              1.80 (1.25-2.58)                0.005
LPCAT1 高表达    2.30 (1.70-3.10)              <0.001

结果解读:

  • 年龄 HR = 1.05:年龄每增加 1 岁,死亡风险增加 5%。

  • T 分期 HR = 2.10:T3-T4 期患者的死亡风险是 T1-T2 期的 2.1 倍。

  • LPCAT1 高表达 HR = 2.30:高表达患者的死亡风险是低表达患者的 2.3 倍(P < 0.001,显著)

Cox 回归分析的主要用途:

  1. 评估生存时间的影响因素(如基因、分期、治疗方案)。

  2. 计算风险比(HR),衡量变量对生存的影响

  3. 处理删失数据,不要求完整生存信息

  4. 适用于多种领域(医学、金融、工程)

  5. 不依赖特定的生存时间分布,比 Kaplan-Meier 曲线 更灵活。

Cox 回归是生存分析中的核心工具,广泛用于医学研究和临床预测。你可以用 MATLAB 运行 Cox 分析,看看数据中是否存在显著影响因素!

程序分析步骤!

可以使用 MATLAB 软件读取 Excel 数据并进行 Cox 回归分析,以获得类似于论文这表 1 的统计结果。可以按照以下步骤实现:

步骤 1:加载数据

  • 使用 readtable 读取 Excel 文件。

来源:通信工程师专辑
MATLABUM
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-03-09
最近编辑:1月前
算法工匠
博士后 | 高级工程师 诚信做事 认真讲课 传播知识
获赞 408粉丝 2663文章 436课程 40
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈