survival | 生存分析(4):Cox比例风险模型

本篇推文来介绍Cox比例风险模型(Cox proportional hazards model),简称为Cox模型。

目录如下:

  • 1 Cox模型形式

    • 1.1 模型的数学形式

    • 1.2 模型说明

    • 1.3 模型的代码形式

  • 2 常规Cox模型

    • 2.1 单类型单事件

    • 2.2 单类型多事件

    • 2.3 多类型单事件

  • 3 多状态Cox模型

    • 3.1 模型示例一

    • 3.2 模型示例二

1 Cox模型形式

1.1 模型的数学形式

通过对生存曲线的学习,我们知道生存率(或死亡风险)是关于生存时间的函数。Cox模型也继承了这一假设,不过它研究的直接对象并不是生存率或死亡率,而是风险函数(hazard function),使用表示,含义是瞬时死亡率。

使用表示死亡函数,即主体生存时间不大于的概率,那么有,

基准风险(baseline hazard)表示风险函数随时间变化的部分,使用表示。

此外,风险函数还会受到主体自身原因即协变量的影响,如性别等。Cox模型假设这部分风险是与时间无关的,并使用以下形式表示:

Cox模型还假设风险函数与基准风险成比例,比例系数就是上式,称为比例风险(proportional hazards,PH),也称风险比(hazards ratio,HR),或相对风险(relative risk,RR)。

基于以上假设,有

将简记为。从而,Cox模型的形式就是:

也可写成如下类似于Logistic模型的形式:

1.2 模型说明

Cox模型被归属于“半参数模型”。其中,基准风险是模型的非参数部分,它与时间的关系没有固定的分布模式;而比例风险函数则是模型的参数部分。

在介绍生存曲线时,我们知道生存率可以根据协变量进行分组计算,这样就限制了协变量必须是分类型变量。而对于Cox模型来说,比例风险部分是一个对数线性模型,连续型和离散型变量均可。

1.3 模型的代码形式

survival工具包中,主要使用coxph()函数运行Cox模型,代码形式大致如下:

单事件:

coxph(formula = Surv(t, status) ~ X, 
      data = data, id = id)

多事件:

coxph(formula = Surv(t1, t2, status) ~ X, 
      data = data, id = id)

从形式上看,coxph()函数的用法和前面介绍的survfit()函数很相似。

在前面介绍的四种类型的生存分析中,只有多类型多事件会涉及到生存状态之间的转移过程,这使得这种情况下的模型设定会更加复杂。接下来的内容安排如下:

  • 第2节介绍常规Cox模型,即针对单类型单事件、单类型多事件和多类型单事件的生存分析;

  • 第3节介绍多状态Cox模型,即针对多类型多事件的生存分析。

2 常规Cox模型

2.1 单类型单事件

2.1.1 模型示例

仍然使用推文《生存曲线(上)》第2节中使用的示例数据ovarian

library(survival)
model1 <- coxph(Surv(futime, fustat) ~ age,
                data = ovarian)
summary(model1)

summary(model1)语句输出结果的解读如下:

## Call:
## coxph(formula = Surv(futime, fustat) ~ age, data = ovarian)
## 
##   n= 26, number of events= 12

模型形式;数据集的行数(状态事件数+删失数);状态事件发生数。

R语言中可以使用survival包来拟合Cox比例风险模型。使用函数coxph()可以拟合Cox模型并计算出风险比例(hazard ratios)。这个函数的语法形式是coxph(formula, data),其中formula表示模型公式,data表示数据集。模型公式可以使用~符号来指定生存时间和事件的关系,例如Surv(time, event) ~ covariates。 下面是一个使用R语言进行Cox模型分析的例子: ```R # 导入survival包 library(survival) # 读取数据 data <- read.csv("data.csv") # 拟合Cox模型 cox_model <- coxph(Surv(time, event) ~ age + sex + treatment, data = data) # 查看模型结果 summary(cox_model) ``` 这个例子中,假设数据集中包含了时间(time)、事件(event)以及一些协变量(例如年龄、性别和治疗方式)。通过使用coxph()函数拟合Cox模型,并使用summary()函数查看模型结果,可以得到每个协变量的估计系数、标准误差、风险比例等信息。 请注意,这只是一个简单的例子,实际的分析可能会涉及更多的数据预处理和模型诊断等步骤。根据具体数据和研究问题的不同,可能需要进行更多的调整和改进。因此,在实际应用中,建议查阅相关的文献和资料,以便更好地理解和应用Cox模型。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [survival | 生存分析(4):Cox比例风险模型](https://blog.csdn.net/weixin_54000907/article/details/126635278)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值