R包survival,survminer生存分析代码

主要函数Usage
Surv(time, time2, event,
    type=c('right', 'left', 'interval', 'counting', 'interval2', 'mstate'),
    origin=0)

ggsurvplot(
  fit,
  data = NULL,
  fun = NULL,
  color = NULL,
  palette = NULL,
  linetype = 1,
  conf.int = FALSE,
  pval = FALSE,
  pval.method = FALSE,
  test.for.trend = FALSE,
  surv.median.line = "none",
  risk.table = FALSE,
  cumevents = FALSE,
  cumcensor = FALSE,
  tables.height = 0.25,
  group.by = NULL,
  facet.by = NULL,
  add.all = FALSE,
  combine = FALSE,
  ggtheme = theme_survminer(),
  tables.theme = ggtheme,
  ...
)

# 加载包
library("survival")
library("survminer")

setwd("/test")

class(lung)
head(lung)
table(lung$sex)

#创建生存曲线
fit<- survfit(Surv(time, status) ~ sex, data = lung)

# Fit a stratified model
data2 <- lung
data2['elder'] <- data2$age >= 60
fit2 <-survfit(Surv(time, status) ~ sex+ strata(elder), data = data2)

# Fit Cox比例风险回归模型。
coxph(Surv(time, status) ~ sex, data = lung)
coxph(Surv(time, status) ~ sex + strata(elder), data = data2)

# 创建一个数据框,其中包含来自survfit结果的摘要。
res.sum <- surv_summary(fit,data=lung)

# 保存生存分析图文件
tiff('test_km.tiff', units="in", width=5, height=4, res=600, compression = 'lzw')
# Drawing Survival Curves Using ggplot2
ggsurvplot(fit,
           surv.plot.height = 1,
           # tables.height = 0.01,
           # tables.width = 0.01,
           xlab= "Survival time (days)",
           conf.int = TRUE,
           risk.table = TRUE,
           risk.table.col = "strata",
           linetype = "strata",
           surv.median.line = "hv",
           ggtheme = theme_bw(),
           # palette = c("#E7B800", "#2E9FDF"),
           pval = TRUE)

ggsurvplot(fit, conf.int = TRUE, risk.table.col = "strata", 
           # Change risk table color by groups ggtheme = theme_bw(), 
           # Change ggplot2 theme palette = c("#E7B800", "#2E9FDF"), 
           fun = "event")

# fun: "event" plots cumulative events (f(y) = 1-y), 
# "cumhaz" plots the cumulative hazard function (f(y) = -log(y)), 
# and "pct" for survival probability in percentage.

dev.off()

# 测试生存曲线差异
surv_diff <- survdiff(Surv(time, status) ~ sex, data = lung)
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值