You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行单因素生存分析(Univariate Survival Analysis)报错及分组分析咨询

单因素生存分析报错解决及需求实现方案

核心错误原因

  • 参数逻辑错误:Surv()函数(analyse_survival内部调用)的入参顺序为Surv(生存时间, 终点事件),你错误将年龄传入终点事件位置,还把真正的终点事件OutcomeMRE放到了分组参数by中,导致生存状态识别失效。
  • 删失数据不规范:未发生终点的病例生存时间设为NA,生存分析模型无法识别缺失的时间值。
  • 变量名错误:后续代码调用的Age变量不存在,实际数据集中为AgeMRE。

前置数据处理

先对数据集做规范化处理:

library(survivalAnalysis)
library(dplyr)

# 构造原始数据集
AgeMRE <- c(60, 67, 71, 66, 71, 73, 50, 67, 67, 61)
OutcomeMRE <- c(0, 1, 0, 1, 1, 1, 1, 1, 0, 1)
EventMRE <- c(NA,  3, NA,  2,  3, 12,  2,  6, NA, 11)
datasetMRE <- data.frame(AgeMRE, EventMRE, OutcomeMRE)

# 处理删失时间:将未发生终点的NA替换为研究最大随访时间(此处为12个月)
datasetMRE$EventMRE <- ifelse(is.na(datasetMRE$EventMRE), 12, datasetMRE$EventMRE)
# 生成年龄二分类分组变量:≥70为1,<70为0
datasetMRE$Age_Group <- ifelse(datasetMRE$AgeMRE >= 70, 1, 0)

分析需求实现

1. 年龄作为连续变量的单因素生存分析

result_continuous <- datasetMRE %>%
  analyse_survival(vars(EventMRE, OutcomeMRE), by = AgeMRE)
# 输出分析结果(含HR、置信区间、P值等指标)
print(result_continuous)

2. 年龄二分类分组的单因素生存分析

result_group <- datasetMRE %>%
  analyse_survival(vars(EventMRE, OutcomeMRE), by = Age_Group)
# 输出分析结果(含logrank检验P值、组间HR等指标)
print(result_group)

内容的提问来源于stack exchange,提问作者Arduan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 22:06:05