R语言绘制生存曲线图

Python016

R语言绘制生存曲线图,第1张

下图显示内置数据集colon,病人rx处理分为三组(下图第三列),对照组: Obs ,处理组一: Levamisole (Lev) ,处理组二: Levamisole + 5-fluorouracil (Lev+5FU)

# loads dplyr

library(dplyr)

# core survival analysisfunctions

library(survival)

# recommended forvisualizing survival curves

library(survminer)

#加载内置colon数据集

data(colon)

#list directory contents

ls(colon)

得到如下图:

#创建生存对象

fit <- survfit(Surv(time, status)~rx, data=colon)

#level()是为了看分组水平情况,以确定对照组,一般level()之后第一个为对照组

levels(colon$rx)

ggsurvplot(fit,risk.table=TRUE,#生存统计统计表

                  conf.int=TRUE,#添加置信区间带

                  palette = c("skyblue","green","red"),#颜色设置

                  pval=TRUE,#log-rank检验

                   pval.method=TRUE)#添加检验text

至于是treatment中的哪一组与Obs相比,显著性,差异性更大,需要查看 Lev 和 obs 对比的p值及HR,以及 (Lev+5FU) 和 Obs 对比的p值及HR,评价分组的治疗效果

#Cox Regression,评价rx分组后治疗效果

fit1<-coxph(Surv(time, status)~rx, data=colon)

fit1

R语言如何做ROC曲线

ROC曲线,做分类时经常会用到的一种结果表现方法。诸如此类的工作,首选工具当然是R。在CRAN上搜了一下,找到一个叫ROCR的包。尽管这个包已经很久没更新了,但用起来还是很爽的。先看一下我画的ROC曲线。

里面是三份预测结果的ROC曲线。

ROCR包中主要是两个class:prediction和performance。前者是将预测结果和真实标签组合在一起,生成一个 prediction对象,然后在用performance函数,按照给定的评价方法,生成一个performance对象,最后直接对 performance用plot函数就能绘制出相应的ROC曲线。

1

2

3

4

5

6

plot a ROC curve for a single prediction run

and color the curve according to cutoff.

data(ROCR.simple)

pred lt- prediction(ROCR.simple$predictions, ROCR.simple$labels)

perf lt- performance(pred,tpr,fpr)

plot(perf,color