引言Introduction

KM生存曲线是临床研究中最常见的预后分析工具之一。但很多人会卡在两点,数据怎么设,结果怎么读。尤其是SPSS里时间变量、状态变量、分组变量一旦设错,整张图和P值都会失真。本文用SEER场景带你完成一次完整的KM生存曲线分析。
SPSS界面中Kaplan-Meier生存分析对话框与一张典型KM曲线图并列展示,强调时间变量、状态变量和分组变量的对应关系。

1.KM生存曲线是什么,适合回答什么问题

1.1 KM曲线的核心用途

Kaplan-Meier方法属于生存分析。它不只看“是否发生事件”,还看“多久发生事件”。这点对肿瘤随访、复发分析、死亡结局、再入院分析都很重要。KM曲线最常用于比较两组或多组患者的生存差异。

在SEER等数据库研究中,常见问题是治疗前后是否影响总体生存期。比如化疗组与未化疗组,谁的生存更长。此时KM曲线能直观展示各组随时间变化的生存概率。

1.2 什么时候不能只看KM曲线

KM曲线适合单因素比较。它能回答“组间是否不同”,但不能自动处理混杂因素。也就是说,如果年龄、分期、治疗方式同时影响结局,KM曲线只能做初步判断。真正要控制混杂,后续还需要Cox回归。

此外,KM分析依赖删失信息。若结局定义不清,或状态变量编码混乱,结果就不可信。临床研究里最常见的错误,是把死亡和存活事件编码反了。

2.SPSS做KM生存曲线前,先把数据准备对

2.1 数据结构要满足三个条件

在SPSS里做KM分析,数据通常要整理成“宽表中的逐行病例数据”。最基本的结构是:

  1. 每一行代表一个病例。
  2. 每一列代表一个变量。
  3. 至少包含时间、状态、分组三个变量。

以课程中的SEER示例为例,研究问题是化疗是否影响总体生存。这里:

  • 时间变量是生存时间。
  • 状态变量是生存结局。
  • 分组变量是是否化疗。

时间变量必须是连续型或可排序的随访时间。 常见单位是月或天。状态变量通常是二分类变量。

2.2 状态变量的编码必须先统一

在示例中,0表示存活,1表示死亡。做KM曲线时,事件通常定义为1,也就是“死亡”才算事件发生。这个定义非常关键。如果事件定义错了,曲线方向和中位生存时间都会出错。

建议在正式分析前先做三步检查:

  • 检查缺失值。
  • 检查时间是否有负值或异常值。
  • 检查分组变量是否只有预期类别。

如果是SEER数据,还要确认变量筛选逻辑一致。比如化疗变量是否代表已接受化疗,还是表示化疗信息是否可得。

3.SPSS中KM生存曲线的实操步骤

3.1 进入分析菜单并选择方法

打开SPSS后,依次点击:

分析,生存分析,Kaplan-Meier。

进入对话框后,把生存时间放入“时间”框,把结局变量放入“状态”框。然后点击“定义事件”,将事件值设为1。这一步决定了SPSS把什么当成“发生事件”。

如果研究的是死亡结局,事件值通常设为1。如果研究的是复发、再入院、妊娠等,也要按研究定义重新指定。

3.2 设置分组和比较方式

接着,把分组变量放入“因子”框。课程示例里用“是否化疗”作为分组因子,这样SPSS会生成两条生存曲线。

然后点击“比较因子”,选择Log-rank检验。Log-rank检验是KM分析最常用的组间比较方法。 它主要比较整条生存曲线是否存在差异,而不是某一个时间点的差异。

3.3 勾选输出选项

点击“选项”,建议勾选以下内容:

  • 生存分析图。
  • 平均生存时间。
  • 中位生存时间。

如果只是为了论文主结果,核心通常是中位生存时间和Log-rank检验P值。平均生存时间在右删失较多时,解释要更谨慎。

完成设置后点击“确定”,SPSS会输出表格和曲线图。

4.怎么看SPSS输出结果

4.1 先看三个表,再看一张图

课程示例中,SPSS一般会输出三个表和一张图。常见顺序是:

  1. 个案处理摘要。
  2. 生存分析时间表。
  3. 比较组间差异的检验表。
  4. Kaplan-Meier生存曲线图。

个案处理摘要的作用主要是交代每组纳入人数。它对论文正文不是重点,但能帮助你确认是否有大量缺失或删失。

4.2 中位生存时间是最常用指标

生存分析时间表通常报告中位生存时间及其95%置信区间。课程示例中,化疗组中位生存时间为47个月,95%CI为42到51个月;未化疗组为77个月,但未必能给出置信区间。这说明某组曲线可能没有清晰降到0.5以下,导致中位数难以稳定估计。

这里要注意一个专业细节。中位生存时间不是“平均活了多久”,而是生存概率降到50%时对应的时间点。它对偏态分布和删失数据更稳健,因此在肿瘤研究中比均值更常见。

4.3 Log-rank检验怎么看

Log-rank检验表里最重要的是卡方值和P值。课程示例中卡方值为18.31,P=0.001。当P<0.05时,说明两组生存曲线差异具有统计学意义。

但要注意,统计学显著不等于临床意义巨大。还要结合:

  • 中位生存时间差。
  • 曲线分离的起始时间。
  • 组间样本量是否均衡。
  • 删失比例是否过高。

如果曲线前期重叠、后期分开,单纯看P值不够,还需要进一步分层或多因素分析。

5.结果解读和论文写作怎么写更规范

5.1 图形解读要抓住三个点

KM曲线的横轴是随访时间,纵轴是累计生存概率。曲线下降越慢,说明预后越好。图中的加号通常代表删失数据。删失点越多,越要注意随访完整性。

写结果时,可以按以下逻辑表达:

  • 哪组生存更好。
  • 差异是否显著。
  • 中位生存时间是多少。
  • P值是多少。

例如可表述为:化疗组与未化疗组的总体生存曲线存在显著差异,化疗组中位生存时间为47个月,未化疗组为77个月,Log-rank检验P=0.001。

5.2 常见错误要避免

KM分析最常见的错误有四类:

  • 事件值定义错误。
  • 分组变量编码不清。
  • 把多因素问题当成单因素问题。
  • 只报图,不报统计量。

论文中最好同时报告中位生存时间、95%CI和Log-rank P值。 如果组间曲线交叉明显,要谨慎解读,因为Log-rank检验对早晚期差异的权重相对平均,可能掩盖某些时段的真实差异。

6.图形保存、排版和进一步分析

6.1 SPSS图形怎么导出更规范

SPSS生成图后,可以双击进入编辑界面,调整线条、字体和坐标轴。完成后再导出。课程中建议优先保存为可编辑图形格式。这样后续排版到论文或汇报PPT时,清晰度更高,也更方便修改。

常见建议包括:

  • 保持图例清晰。
  • 坐标轴单位写完整。
  • 图注中注明分组定义。
  • 必要时标出中位生存时间位置。

6.2 KM之后通常还要做什么

KM曲线适合做初步预后探索。真正完整的预后研究,通常还要继续做:

  1. 单因素分析。
  2. 多因素Cox回归。
  3. 亚组分析或分层分析。
  4. 必要时做模型验证。

KM曲线回答的是“有没有差异”。Cox回归回答的是“差异是否独立存在”。 两者配合,文章逻辑才完整。

总结Conclusion

KM生存曲线是临床研究中最基础,也最实用的生存分析方法。掌握它的关键,不是记住菜单路径,而是搞清楚时间、状态、分组三个变量的定义,以及Log-rank和中位生存时间的正确解读。只要数据编码准确,SPSS操作并不复杂。

如果你希望把KM分析进一步写成可发表的结果段,或需要把SEER数据分析流程整理成论文级表述,可以借助解螺旋的科研与写作支持,减少重复试错,让结果更快落地。

解螺旋科研助手企业微信二维码,扫码添加免费领取科研资料礼包,包含AI科研提效、SCI投稿技巧、国自然基金、医学科研绘图、科研软件工具等实用资料