当前位置: 首页 > news >正文

从0开始学习R语言--Day51--PH检验

在用cox回归做分析时,我们一般会得出各种变量在结局的风险影响(HR大于1,就代表变量值增大,对应结局影响的风险就随之增大),但是这里有个坏处是,cox回归得到的是瞬时风险值,我们最多得到一段时间,这个变量的影响。

而PH检验,就是为了验证变量对结局的风险影响是否会随时间变化,如果不会,那么求得的p值就会大于0.05,也就说明回归里的HR值的可解释性高。

以下是一个例子:

# 加载生存分析包
library(survival)
library(survminer) # 用于PH检验和绘图# 生成数据(100个样本)
set.seed(123)
n <- 100
group <- sample(c("Treatment", "Placebo"), n, replace = TRUE)
time <- ifelse(group == "Treatment", rexp(n, rate = 0.1),  # 治疗组风险更低rexp(n, rate = 0.2))   # 安慰剂组风险更高
status <- rbinom(n, 1, 0.8)  # 80%的事件观察到(1=事件发生,0=删失)# 创建数据框
df <- data.frame(time, status, group)
head(df)# 拟合Cox模型
cox_model <- coxph(Surv(time, status) ~ group, data = df, ties = "breslow")
summary(cox_model)# PH检验(全局检验)
ph_test <- cox.zph(cox_model)
print(ph_test)# 可视化检验结果( Schoenfeld残差 vs 时间)
ggcoxzph(ph_test)

输出:

Call:
coxph(formula = Surv(time, status) ~ group, data = df, ties = "breslow")n= 100, number of events= 77 coef exp(coef) se(coef)      z Pr(>|z|)
groupTreatment -0.2469    0.7813   0.2440 -1.012    0.312exp(coef) exp(-coef) lower .95 upper .95
groupTreatment    0.7813       1.28    0.4843      1.26Concordance= 0.52  (se = 0.032 )
Likelihood ratio test= 1  on 1 df,   p=0.3
Wald test            = 1.02  on 1 df,   p=0.3
Score (logrank) test = 1.03  on 1 df,   p=0.3chisq df    p
group   0.34  1 0.56
GLOBAL  0.34  1 0.56

结果表明,虽然group在cox回归的p值较低,HR也小于1,但是group和global的PH是大于0.05的,这可能意味着方向是对的,只是特征要处理一下,或者是要剖析一下结果。

http://www.lryc.cn/news/593320.html

相关文章:

  • HAMR硬盘高温写入的可靠性问题
  • 数字图像处理(三:图像如果当作矩阵,那加减乘除处理了矩阵,那图像咋变):从LED冬奥会、奥运会及春晚等等大屏,到手机小屏,快来挖一挖里面都有什么
  • 我用Cursor,1周上线了一个虚拟资料流量主小程序技术选型
  • 图解系统-小林coding笔记
  • view和pure的区别
  • 电脑windows系统深度维护指南
  • Validation - Spring Boot项目中参数检验的利器
  • 前端开发技巧:浏览器模拟弱网络环境
  • 中间件安全攻防全解:从Tomcat到Weblogic反序列化漏洞介绍
  • 暑假--作业3
  • Redis的持久化-RDB
  • 关于个人博客系统的测试报告
  • 【2025最新】使用neo4j实现GraphRAG所需的向量检索
  • BeanFactory 和 FactoryBean 的区别
  • Netty网络聊天室及扩展序列化算法
  • (后者可以节约内存/GPU显存)Pytorch中求逆torch.inverse和解线性方程组torch.linalg.solve有什么关系
  • 单调队列深度解析(下)
  • 7.19 换根dp | vpp |滑窗
  • 物联网-规则引擎的定义
  • LeetCode中等题--167.两数之和II-输入有序数组
  • RT-Thread的概念和移植
  • Spring AI 项目实战(十八):Spring Boot + AI + Vue3 + OSS + DashScope 实现高效语音识别系统(附完整源码)
  • OpenCV 官翻7 - 对象检测
  • Edge浏览器设置网页自动翻译
  • #Datawhale组队学习#7月-强化学习Task2
  • 医疗AI与融合数据库的整合:挑战、架构与未来展望(上)
  • 高压电工作业证考试核心考点:电气安全基础篇
  • MCP 协议详细分析一 initialize ping tools/list tools/call
  • 初识C++——开启新旅途
  • 简单易懂,两级页表(多级页表)