R中进行生存资料AUC的计算-经管之家官网!

人大经济论坛-经管之家 收藏本站
您当前的位置> 金融>>

金融学

>>

R中进行生存资料AUC的计算

R中进行生存资料AUC的计算

发布:moonstone | 分类:金融学

关于本站

人大经济论坛-经管之家:分享大学、考研、论文、会计、留学、数据、经济学、金融学、管理学、统计学、博弈论、统计年鉴、行业分析包括等相关资源。
经管之家是国内活跃的在线教育咨询平台!

获取电子版《CDA一级教材》

完整电子版已上线CDA网校,累计已有10万+在读~ 教材严格按考试大纲编写,适合CDA考生备考,也适合业务及数据分析岗位的从业者提升自我。

完整电子版已上线CDA网校,累计已有10万+在读~ 教材严格按考试大纲编写,适合CDA考生备考,也适合业务及数据分析岗位的从业者提升自我。

除了Logistic回归能够计算预测值与真实值的综合一致程度,也即AUC外,生存分析同样能计算AUC。但生存分析假设不同,生存函数的构建也就不尽相同。因而,不同方法计算得到的生存资料的AUC也不尽相同。同时,生存函数R ...
扫码加入统计交流群


除了Logistic回归能够计算预测值与真实值的综合一致程度,也即AUC外,生存分析同样能计算AUC。但生存分析假设不同,生存函数的构建也就不尽相同。因而,不同方法计算得到的生存资料的AUC也不尽相同。同时,生存函数ROC曲线的绘制也更加复杂。下面提供几种常用的基于R计算生存资料AUC的方法,并提供两种时间依赖的生存函数的AUC计算示例。
但目前来说,还没有方法可以直接比较两个生存函数的AUC是否存在显著的统计学差异。
如果对R中进行生存资料分析的基础程序包不是很熟悉的话,可以先看看之前的一个帖子:
https://bbs.pinggu.org/thread-4127756-1-1.html
  1. install.packages(c("clinfun","CPE","risksetROC", "timeROC",
  2. "survivalROC","survC1","survIDINRI"))

  3. library(survival)

  4. set.seed(666)
  5. age <- rnorm(400, 50, 10)
  6. bp<- rnorm(400,120, 15)
  7. d.time <- rexp(400)
  8. cens <- runif(400,.5,2)
  9. death<- d.time <= cens
  10. d.time <- pmin(d.time, cens)

  11. fit <- coxph(Surv(d.time,death) ~ age + bp)
  12. summary(fit)
  13. # Concordance = 0.502(se = 0.019 )

  14. # Compute the concordance between a right-censored
  15. # survival time and a single continuous covariate
  16. survConcordance(Surv(d.time,death) ~ predict(fit))
  17. # Concordance = 0.502101(se = 0.01883032 )
  18. # Concordance = concordant/(concordant+discordant)

  19. library(Hmisc)
  20. # Computes the c index and the corresponding generalization of
  21. # Somers' Dxy rank correlation for a censored response variable.
  22. rcorrcens(Surv(d.time,death) ~ predict(fit))
  23. # C index: 1 - 0.498 = 0.502
  24. # C index = (1+aDxy)/2 = (1+0.004)/2 = 0.502

  25. library(risksetROC)
  26. tmax <- max(d.time)
  27. # Create and plot AUC based on incident/dynamic definition of Heagerty
  28. AUC <- risksetAUC(Stime=d.time, status=death,
  29. marker=age + bp, method="Cox", tmax=tmax)
  30. AUC$Cindex
  31. # 0.5020833

  32. library(clinfun)
  33. # Calculate Gonen & Heller concordance probability estimate (CPE) for
  34. # for the Cox proportional hazards model.
  35. coxphCPE(fit)
  36. # CPE= 0.50884256, se.CPE = 0.01678487

  37. library(CPE)
  38. # Calculate Gonen & Heller concordance probability estimate (CPE)
  39. # for the Cox proportional hazards model.
  40. phcpe(fit, CPE.SE=TRUE,out.ties=TRUE)
  41. # CPE= 0.5088426, se.CPE = 0.01678487


  42. library(survivalROC)
  43. # Time-dependent ROC curve estimation from censored survival data
  44. AUC2 <- survivalROC(Stime=d.time, status=death,
  45. marker = eta,
  46. predict.time =265, method="KM")
  47. AUC2$AUC
  48. # 0.6124465
  49. plot(AUC2$FP,
  50. AUC2$TP,
  51. type="l",
  52. xlim=c(0,1), ylim=c(0,1),
  53. xlab=paste( "FP", "\n", "AUC = ",round(AUC2$AUC,3)),
  54. ylab="TP",main="AUC2, Method = KM \n Year = 1")
  55. abline(0,1)

  56. library(timeROC)
  57. # Time-dependent ROC curve estimation
  58. ROC<-timeROC(T=d.time,
  59. delta=death,
  60. marker=eta,
  61. other_markers=as.matrix(bp),
  62. cause=1,
  63. weighting="marginal",
  64. times=quantile(d.time,probs=seq(0.2,0.8,0.1)),
  65. ROC = TRUE,
  66. iid = TRUE)
  67. ROC
  68. confint(ROC)
复制代码
「经管之家」APP:经管人学习、答疑、交友,就上经管之家!
免流量费下载资料----在经管之家app可以下载论坛上的所有资源,并且不额外收取下载高峰期的论坛币。
涵盖所有经管领域的优秀内容----覆盖经济、管理、金融投资、计量统计、数据分析、国贸、财会等专业的学习宝库,各类资料应有尽有。
来自五湖四海的经管达人----已经有上千万的经管人来到这里,你可以找到任何学科方向、有共同话题的朋友。
经管之家(原人大经济论坛),跨越高校的围墙,带你走进经管知识的新世界。
扫描下方二维码下载并注册APP
本文关键词:

本文论坛网址:https://bbs.pinggu.org/thread-5016838-1-1.html

人气文章

1.凡人大经济论坛-经管之家转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
数据分析师 人大经济论坛 大学 专业 手机版
联系客服
值班时间:工作日(9:00--18:00)