如何做生存分析 r语言

在某些领域的分析中,常常用追踪的方式来研究事物的发展规律,比如研究某种药物的疗效,手术后的存活时间,某件机器的使用寿命等。这种分析的特点是追踪研究的对象都要经过一段时间,而且经常会碰到出于某种原因无法继续追踪的情况。生存分析就是用来研究这段追踪时间的分布规律以及相关因素的一种统计分析方法。一、生存分析的一些概念
1.观察起点是指由研究者确定的研究开始时的时间
2.终点事件是指由研究者确定的某种发生的事件,这种事件必须明确定义,而且并不一定是消极事件
3.生存时间是指从观察起点到终点事件发生时所经历的时间跨度,这个时间也未必是通常意义上的时间,也可以是和时间相关的变量。比如距离等,具体要根据研究目的而定义。
4.删失数据由于经常会碰到出于某种原因无法继续追踪的情况,导致终点事件分为两种:一种是完整数据,用t表示,它准确的度量了从观察起点到终点事件发生的完整时间,提供的生存时间的信息是全面准确的。另一种是删失数据,用t+表示,由于某种原因没有追踪到终点事件的发生,它提供的生存时间信息是不完整的。造成删失数据的原因主要有失访、终点事件的发生并不是由于预定义的原因造成、研究结束时终点事件并未发生等。
5.死亡概率表示某时段开始存货的个体,在该时段内死亡的可能性,如年死亡概率q=某年内死亡人数/某年年初人口数,如果年内存在删失数据,需要对分母进行校正,校正人口数=年初人口数-删失例数/2
6.生存概率某时段开始时存活的个体,到该时段结束时让然存活的可能性p=某年存活满一年的人数/某年年初人口数=1-q,如果年内存在删失数据,需要对分母进行校正,校正人口数=年初人口数-删失例数/2
7.生存函数也称为生存率或累积生存概率,是随着时间的变化而变化的,是关于时间的函数,是指0时刻存活的个体经历t个时段之后仍然存活的可能性,或者说个体的生存时间T大于某时刻t的概率,t=0时,生存函数取值为1,随着t增大,生存函数值逐渐减小如果存在删失数据,则需要分段计算生存概率,在应用概率的乘法定理将分段概率相乘,注意:生存概率是针对单位时段而言的,生存函数是生存概率的累积结果。8.死亡函数指个体的生存时间小于某个时刻t的概率,和生存函数相反,t=0时,死亡函数取值为0,随着t增大,死亡函数值逐渐增大9.死亡密度函数个体在某个时刻t的瞬时死亡率称为死亡密度函数,是死亡函数的导数10.风险函数生存到t时刻的个体在此后一个时间单位的瞬时死亡率为风险函数11.半数生存期也称为中位生存期,是生存函数的中位数,表示恰好有50%的个体存活的时间,即生存率为50%时对应的生存时间,是描述集中趋势的指标。12.四分位数间距是指生存期的四分位数间距,是反映离散程度大小的指标
==============================================
二、生存分析简介结合上述概念,我们总结一下生存时间数据的特点:1.因变量有两个:生存时间和终点事件的发生,这和Logistic回归不同,Logistic回归只考虑终点事件是否发生一个因变量。2.可能存在删失数据3.由于生存时间的数据都是长期追踪的结果,期间难以控制混杂因素,因此生存时间的分布类型很复杂,常呈现偏态和不规则状态,难以用传统的统计方法加以分析。由于生存时间数据的特殊性,因此需要使用生存分析来处理。生存分析的主要内容1.描述生存过程研究生存时间的分布特点,估计生存率及平均存活时间,绘制生存曲线等,根据生存时间的长短,可以估算出各个时点的生存率,并根据生存率来估计中位生存时间,也可以根据生存曲线分析其生存特点,一般使用Kaplan-Meier法和寿命表法
2.比较生存过程可通过生存率及其标准误对各样本的生存率进行比较,以探讨各组间的生存过程是否存在差异,一般使用Log-rank检验和Breslow检验
3.分析危险因素是通过生存分析模型来探讨影响生存时间和终点事件的保护因素和不利因素,因素作用的大小及方向,相对危险度的大小,基本使用Cox回归模型
4.建立数学模型建立最终的数学模型,也是通过Cox回归模型完成============================================三、生存分析的具体方法生存分析方法可以分为描述法、参数法、半参数法和非参数法1.描述法根据样本观测值提供的信息,直接用公式计算出每一个时间点或每一个时间区间上的生存函数、死亡函数、风险函数等,并采用列表或绘图的形式显示生存时间的分布规律优点:方法简单且对数据分布无要求缺点:不能比较两组或多组生存时间分布函数的区别,不能分析危险因素,不能建立生存时间与危险因素之间的关系模型。2.非参数法估计生存函数时对生存时间的分布没有要求,并且检验危险因素对生存时间的影响时采用的是非参数检验方法优点:可以估计生存函数,可以比较两组或多组生存分布函数。可以分析危险因素对生存时间的影响,对生存时间的分布没有要求。缺点:不能建立生存时间与危险因素之间的关系模型。3.参数法根据样本观测值来估计假定的分布模型中的参数,获得生存时间的概率分布模型优点:可以估计生存函数,可以比较两组或多组生存分布函数。可以分析危险因素对生存时间的影响,可以建立生存时间与危险因素之间的关系模型。缺点:需要事先知道生存时间的分布4.半参数法不需要对生存时间的分布做出假定,但是却可以通过一个模型来分析生存时间的分布规律,以及危险因素对生存时间的影响,最著名的就是COX回归优点:可以估计生存函数,可以比较两组或多组生存分布函数。可以分析危险因素对生存时间的影响,可以建立生存时间与危险因素之间的关系模型,不需要事先知道生存时间的分布。可以说半参数法集合了上述三种方法的优点。=========================================下面介绍一下生存分析时每步对应的方法&1&Kaplan-Meier法也称为乘积极限法,适用于小样本资料,基本思路是:将生存时间从小到大排序,计算不同时间的死亡概率和生存概率,然后采用条件概率及概率的乘法原理计算生存函数,并做生存曲线。&2&寿命表法有些研究无法准确记录终点事件的发生时间,只能定期追踪,其生存函数的估计只能根据时段进行,或者样本较大时,将数据按年、月、日进行分组,得到若干时间段的数据频数表,这种形式的数据资料可以使用寿命表法进行生存函数估计,基本思路是:确定等距的时间间隔,求出个体在治疗前后各时期的生存概率,根据概率乘法法则,将各时期生存概率相乘,即得到自观察开始到各时点的生存函数并做生存曲线,例如:1年生存率P1,5年生存率P1*P2*P3*P4*P5&3&Log-rank检验也称为对数秩检验或时序检验,基本思想为:在原假设成立的前提下,根据两种处理不同生存时间的期初观察人数和理论死亡概率计算出的理论死亡数应该与实际死亡数相差不大,如果相差较大,则原假设不成立,可认为两条生存曲线存在统计学差异,统计量服从自由度为组数-1的卡方分布H0:两种疗法的生存函数相同(两条生存曲线相同)H1:两种疗法的生存函数不同图(两条生存曲线不同)&4&Breslow检验和Log-rank检验类似,只是权重不同,Breslow检验给组间死亡的近期差别更大的权重,对近期差异敏感,而Log-rank检验给组间死亡的远期差别更大的权重,对远期差异敏感&5&Cox回归模型也称为Cox比例风险模型,是一种半参数模型,Log-rank检验和Breslow检验都属于单因素分析法,面对多个影响因素时往往无能为力,而Cox回归模型可以分析多个因素对生存时间的影响,且不要求资料服从特定的分布,是比较全面的一种分析方法。Cox回归模型具有一般回归分析的特点,在其他因素固定的情况下,可以比较某一因素的不同水平对生存时间的影响。它与Logisitc回归模型有相似之处,在估计出回归系数之后,可以计算出相应因素的相对危险度,但是Logisitc回归模型的因变量只是定性变量,也就是事情的结果(终点事件),而没有考虑生存时间的长短,而Cox回归模型是以生存时间和终点事件为因变量,更多的利用了资料的信息。Cox回归模型的表达式为X1,X2,X3...Xp指可能影响死亡率的危险因素,也称为协变量
t表示生存时间
h(t)表示具有协变量X1,X2,X3...Xp的个体在t时刻的风险函数,即t时刻存活的个体在t时刻的瞬间死亡率
h0(t)表示基准风险函数,即当协变量X1=X2=...Xp=0时,个体在t时刻的风险函数
&1,&2,&3...&p表示各协变量所对应的回归系数,其估计值可以从样本中计算,回归系数的实际意义是:在其他自变量固不变的条件下,协变量X每改变一个单位所引起的相对危险度RR值的自然对数。&&0,RR&1,x越大表示个体死亡的风险越大&=0,RR=1,则x的取值对死亡风险无影响&&0,RR&1,x越大表示个体死亡的风险越小exp(&pXp)表示相对危险度RR值或风险比,我们取任意两个群体的风险函数之比可见,回归系数&就是协变量X的相对危险度RR值的自然对数,从上面的公式我们也可以看出,Cox回归模型的基本思想是在风险函数和危险因素之间建立广义线性模型关联,这样就可以考察危险因素对风险函数的影响效果。比例风险模型假定:RR值与基准风险函数无关,也与时间t无关,即模型中的自变量效应不随时间而改变,Cox回归模型只有在这个假定条件下进行拟合才是有效的,类似于线性回归模型中的线性相关假设,对此,在分析时要进行验证。Cox回归模型的拟合步骤1.估计参数:使用极大似然法2.参数显著性检验:对于整个模型使用似然比检验,对于单个自变量使用Wald检验或比分检验3.回归系数的区间估计4.拟合回归方程
阅读(...) 评论()后使用快捷导航没有帐号?
查看: 6507|回复: 16
用R作生存分析
高级会员, 积分 564, 距离下一级还需 436 积分
论坛徽章:2
本帖最后由 dongsheng 于
23:16 编辑
生存分析(Survival analysis)是指根据试验或调查得到的数据对生物或人的生存时间进行分析和推断,研究生存时间和结局与众多影响因素间关系及其程度大小的方法,也称生存率分析或存活率分析。除常用于生物医学外,还可用工程技术方向,如研究影响零件的出故障早晚的因素,或研究影响电灯泡的寿命的因素,从而提高质量。总之生存分析可用时间和结局与众多影响因素间关系及其程度大小的方法,而不可受生存的局限,误认为只能用于生物医学。
#用到的数据
22:39 上传
点击文件名下载附件
library(survival)
addicts &- read.table('ADDICTS.txt',T)
names(addicts) &- c('id','clinic','status', 'survt','prison','dose')
# 1. 估计生存函数,观察不同组间的区别
# 建立生存对象
Surv(addicts$survt,addicts$status==1)
# 估计KM生存曲线
y &- Surv(addicts$survt,addicts$status==1)
kmfit1 &- survfit(y~1)
summary(kmfit1)
plot(kmfit1)
a.jpeg (53.97 KB)
22:39 上传
# 根据clinic分组估计KM生存曲线
kmfit2 &- survfit(y~addicts$clinic)
plot(kmfit2, lty = c('solid', 'dashed'), col=c('black','blue'),
& &&&xlab='survival time in days',ylab='survival probabilities')
legend('topright', c('Clinic 1','Clinic 2'), lty=c('solid','dashed'),
& && & col=c('black','blue'))
b.jpeg (68.05 KB)
22:39 上传
# 检验显著性
survdiff(Surv(survt,status)~clinic, data=addicts)
survdiff(formula = Surv(survt, status) ~ clinic, data = addicts)
& && && &&&N Observed Expected (O-E)^2/E (O-E)^2/V
clinic=1 163& && &122& &&&90.9& && &10.6& && &27.9
clinic=2&&75& && & 28& &&&59.1& && &16.4& && &27.9
Chisq= 27.9&&on 1 degrees of freedom, p= 1.28e-07
# 用strata来控制协变量的影响
survdiff(Surv(survt,status) ~ clinic +strata(prison),data=addicts)
# 2. 用图形方法检验PH假设
plot(kmfit2,fun='cloglog',xlab='time in days using logarithmic
& &&&scale',ylab='log-log survival', main='log-log curves by clinic')
c.jpeg (60.66 KB)
22:39 上传
# 不平行,不符合PH假设
#&&3. 构建COX PH回归模型
y &- Surv(addicts$survt,addicts$status==1)
coxmodel &- coxph(y~ prison + dose + clinic,data=addicts)
summary(coxmodel)
coxph(formula = y ~ prison + dose + clinic, data = addicts)
&&n= 238, number of events= 150
& && && && &coef exp(coef)&&se(coef)& && &z Pr(&|z|)& &
prison&&0....953& &0.0508 .&&
dose& &-0....545 2.94e-08 ***
clinic -1....700 2.61e-06 ***
Signif. codes:&&0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
& && & exp(coef) exp(-coef) lower .95 upper .95
prison& & 1.3862& &&&0.7214& & 0.9988& & 1.9238
dose& && &0.9652& &&&1.0360& & 0.9533& & 0.9774
clinic& & 0.3643& &&&2.7453& & 0.2391& & 0.5550
Concordance= 0.665&&(se = 0.026 )
Rsquare= 0.238& &(max possible= 0.997 )
Likelihood ratio test= 64.56&&on 3 df,& &p=6.228e-14
Wald test& && && && &= 54.12&&on 3 df,& &p=1.056e-11
Score (logrank) test = 56.32&&on 3 df,& &p=3.598e-12
# 两模型选择
mod1 &- coxph(y ~ prison + dose + clinic,data=addicts)
mod2 &- coxph(y ~ prison + dose + clinic + clinic*prison
& && && &&&+ clinic*dose, data=addicts)
anova(mod1,mod2)
Analysis of Deviance Table
Cox model: response is&&y
Model 1: ~ prison + dose + clinic
Model 2: ~ prison + dose + clinic + clinic * prison + clinic * dose
& &loglik&&Chisq Df P(&|Chi|)
1 -673.26& && && && && && &&&
2 -671.45 3.6182&&2& & 0.1638
step(mod2)
Start:&&AIC=1352.9
y ~ prison + dose + clinic + clinic * prison + clinic * dose
& && && && && & Df& & AIC
- dose:clinic& & 1 1351.9
&none&& && && && & 1352.9
- prison:clinic&&1 1353.8
Step:&&AIC=1351.86
y ~ prison + dose + clinic + prison:clinic
& && && && && & Df& & AIC
&none&& && && && & 1351.9
- prison:clinic&&1 1352.5
- dose& && && &&&1 1382.4
coxph(formula = y ~ prison + dose + clinic + prison:clinic, data = addicts)
& && && && && & coef exp(coef) se(coef)& &&&z& && & p
prison& && && &1.164& &&&3.203&&0.5 3.1e-02
dose& && && & -0.037& &&&0.964&&0.0 1.4e-08
clinic& && &&&-0.655& &&&0.519&&0.2 2.3e-02
prison:clinic -0.699& &&&0.497&&0.4 1.0e-01
Likelihood ratio test=67.2&&on 4 df, p=8.78e-14&&n= 238, number of events= 150
# 简洁模型更好
# 风险预测
predict(mod1,newdata=pattern1,
& && &&&type='risk')
# 4. 构建一个stratified Cox model.
# 当PH假设在clinic不成立,控制这个变量
mod3 &- coxph(y ~ prison + dose +
& && && && && & strata(clinic),data=addicts)
summary(mod3)
coxph(formula = y ~ prison + dose + strata(clinic), data = addicts)
&&n= 238, number of events= 150
& && && && &coef exp(coef)&&se(coef)& && &z Pr(&|z|)& &
prison&&0....306& &0.0211 *&&
dose& &-0....432 5.59e-08 ***
Signif. codes:&&0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
& && & exp(coef) exp(-coef) lower .95 upper .95
prison& & 1.4764& &&&0.6773& & 1.0603& & 2.0559
dose& && &0.9655& &&&1.0357& & 0.9533& & 0.9778
Concordance= 0.651&&(se = 0.034 )
Rsquare= 0.133& &(max possible= 0.994 )
Likelihood ratio test= 33.91&&on 2 df,& &p=4.322e-08
Wald test& && && && &= 32.66&&on 2 df,& &p=8.076e-08
Score (logrank) test = 33.33&&on 2 df,& &p=5.774e-08
#&&5.对PH假设进行统计检验
mod1 &- coxph(y ~ prison + dose + clinic,data=addicts)
cox.zph(mod1,transform=rank)
&&& && && &rho&&chisq& && & p
prison -0. 0.57068
dose& & 0. 0.29521
clinic -0. 0.00120
GLOBAL& && &NA 12.425 0.00606
# P值小显示PH假设不符合
# 显示系数变化图
plot(cox.zph(mod1,transform=rank),se=F,var='clinic')
d.jpeg (63.44 KB)
22:39 上传
#&&6. 得到COX调整后生存曲线
mod1 &- coxph(y ~ prison + dose + clinic,data=addicts)
pattern1 &- data.frame(prison=0,dose=70,clinic=2)
summary(survfit(mod1,newdata=pattern1))
plot(survfit(mod1,newdata=pattern1),conf.int=F)
mod3 &- coxph(y ~ prison + dose +
& && && && && & strata(clinic),data=addicts)
pattern2 &- data.frame(prison=.46,dose=60.40)
plot(survfit(mod3,newdata=pattern2),conf.int=F)
e.jpeg (46.62 KB)
22:39 上传
# 7. 构建参数模型
modpar1 &- survreg(Surv(addicts$survt,addicts$status) ~
& && && && && && && &prison +dose +clinic,data=addicts,
& && && && && && & dist='exponential')
summary(modpar1)
survreg(formula = Surv(addicts$survt, addicts$status) ~ prison +
& & dose + clinic, data = addicts, dist = &exponential&)
& && && && &&&Value Std. Error& &&&z& && &&&p
(Intercept)&&3.6843& & 0.4 1.19e-17
prison& && &-0.2526& & 0.1 1.25e-01
dose& && && &0.0289& & 0.0 2.52e-06
clinic& && & 0.8806& & 0.2 2.91e-05
Scale fixed at 1
Exponential distribution
Loglik(model)= -1094& &Loglik(intercept only)= -1118.9
& && &&&Chisq= 49.91 on 3 degrees of freedom, p= 8.3e-11
Number of Newton-Raphson Iterations: 5 n= 238
金牌会员, 积分 2890, 距离下一级还需 110 积分
论坛徽章:41
厉害,很详细。学习了。
高级会员, 积分 681, 距离下一级还需 319 积分
论坛徽章:4
新手上路, 积分 1, 距离下一级还需 49 积分
论坛徽章:0
注册会员, 积分 107, 距离下一级还需 93 积分
论坛徽章:3
中级会员, 积分 242, 距离下一级还需 258 积分
论坛徽章:0
# 简洁模型更好
# 风险预测
predict(mod1,newdata=pattern1,
& && &&&type='risk')这个好像实现不了吧?
中级会员, 积分 201, 距离下一级还需 299 积分
论坛徽章:3
学习了,楼主厉害啊!& && && && && && && && && && &&&
中级会员, 积分 347, 距离下一级还需 153 积分
论坛徽章:14
先搜藏以后研究下 为什么我每次说的比别人多 或者一样多 但是我的就是不能发表
注册会员, 积分 128, 距离下一级还需 72 积分
论坛徽章:1
学习了,楼主很强大!
新手上路, 积分 1, 距离下一级还需 49 积分
论坛徽章:0
请问楼主有没有数据描述
扫一扫加入本版微信群生存分析;一.Librariesanddatasets;library()#查看你的系统中所有已装的li;library(survival)#加载一个li;library(help=survival)#s;aml#seethedata;#《生存分析》需要的两个libraries;library(survival);library(KMsurv)#包含我们教材
一.Libraries and data sets
# 查看你的系统中所有已装的libraries
library(survival)
# 加载一个library, 也可使用鼠标来做
library(help=survival)
# see the list of available functions and data sets. data(aml)
# 加载数据 aml
# see the data
# 《生存分析》需要的两个 libraries
library(survival)
library(KMsurv)
#包含我们教材中所有的数据
# 若想使数据中的变量能够在R中作为一个变量使用,use attach():
& attach(aids)
& detach(aids)
二.Survival Objects
#由函数 Surv 产生一个
survival object
Surv (time, time2, event, type)
? time: survival time
? time2: ending time if it is interval censored
? event: censoring variable.
For interval censored data, 0=right censored, 1=event at time, 2=left censored, 3=interval censored.
? type: indicating whether it is right censored, left censored or interval censored or counting process. 默认值是右删失或 counting process
#假设一个观测值为 [2, 3],则 R 语句为
Surv(time=2,time2=3, event=3, type = &interval&)
#右删失数据
? attach(aml)
? Surv(time,status)
? detach(aml)
#左截断右删失数据
? data(psych)
? attach(psych)
? my.surv.object &- Surv(age, age+time, death)
? my.surv.object
[1] (51,52 ] (58,59 ] (55,57 ] (28,50 ] (21,51+] (19,47 ] (25,57 ] [22] (29,63+] (35,65+] (32,67 ] (36,76 ] (32,71+]
? detach(psych)
三. The Kaplan-Meier Estimates
#计算生存曲线:survfit,有三个重要的参数:formula, conf.int, and conf.type.
survfit(formula, conf.int = 0.95, conf.type = &log&)
conf.type=”plain”
#linear confidence interval in our book
conf.type=”log”
# 对H(t)作log transformation
conf.type=”log-log”
#log-transformed in our book
myfit = survfit(Surv(time,status) ~ 1,data=kidney)
#在新版的R里,这个~1是必要的。
attach(kidney)
myfit = survfit(Surv(time,status) ~ 1)
#在新版的R里,这个~1是必要的。
a=summary(survfit(Surv(time,status)~1))
b=summary(survfit(Surv(time,status)~1), censored=TRUE)
#提取 survfit 产生的结果
# outputs the Kaplan-Meier estimate at each t_i
summary(myfit)$std.err
# standard error of the K-M estimate at {t_i}
summary(myfit)$lower
lower pointwise estimates
summary(myfit)$upper
# upper pointwise estimates
画出生存曲线
plot(myfit, main=&Kaplan-Meier estimate with 95% confidence bounds&,
xlab=&time&, ylab=&survival function&)
par(mfcol=c(2,1))
plot(myfit, conf.int=F, main=&Kaplan-Meier estimate with 95% confidence bounds&,
xlab=&time&, ylab=&survival function&)
plot(survfit(Surv(time,status) ~ 1, conf.int=0.99),
main=&Kaplan-Meier estimate with 99% confidence bounds&,
xlab=&time&, ylab=&survival function&)
par(mfrow=c(1,1))
#假设一个数据里有不同的组,下列指令可同时画出各组的生存曲线
attach(kidney)
survfit( Surv(time,status) ~ sex)
plot(myfit1, main=&Kaplan-Meier estimate &, xlab=&time&, ylab=&survival function for different sex group&)
plot(myfit1, conf.int=T, col=c(&green&,&red&), main=&Kaplan-Meier estimate &, xlab=&time&, ylab=&survival function for different sex group&)
#下列指令输出 Residual mean time 和 它的标准差,及median time
print(myfit, show.rmean=TRUE)
四.Nelson-Aalen estimator
= summary(myfit)$n.risk
event = summary(myfit)$n.event
= summary(myfit)$time
hazard = event / risk
n = length(hazard)
H = rep(0,n)
H[1] = hazard[1]
H[i]=H[i-1]+hazard[i]
plot(time,H,type=”s”)
my &- summary(survfit(Surv(aml$time[1:11], aml$status[1:11]),type=&fh&))
list(my$time, -log(my$surv))
五. Log-rank test
attach(melanom)
survdiff(Surv(days,status==1)~sex)
survdiff(Surv(days,status==1)~sex+strata(ulc))
#关于儿童急性白血病的配对数据, section 1.2
attach(drug6mp)
placebo= drug6mp*,c(&remstat&,&pair&,&t1”)+
= drug6mp[,c(&pair&,&remstat&,&t2&,&relapse&)]
将变量名统一
colnames(placebo)*3+=”time”
colnames(drug)*3+=”time”
colnames(drug)*4+=”censor”
对placebo组加上删失变量
censor=rep(1,21)
placebo=cbind(placebo,censor)
all = rbind(placebo,drug)
### Compare treatment and placebo
survdiff(Surv(time, censor)?1)
# 不对, no stratification survdiff(Surv(time, censor)?1 + strata(pair))
# stratify on pair
五. Cox 模型
coxph(formula, data=, method=c(&efron&,&breslow&,&exact&))
summary(coxph(Surv(days,status==1)~sex+log(thick)+strata(ulc), data=melanom))
plot(survfit(coxph(Surv(days,status==1)~sex+log(thick)+sex+strata(ulc),data=melanom)))
To obtain the survival function of a particular subject with specific covariate values (x = 1): coxfit1 &- coxph(Surv(time, status)~x, data=aml)
survfit(coxfit1, newdata=data.frame(x=1))
coxfit2=coxph(Surv(days,status==1)~sex+log(thick)+strata(ulc), data=melanom) survfit(coxfit2, newdata=data.frame(sex=1,thick=65,ulc=2))
#计算 baseline cumulative hazard function
= coxph(Surv(days,status==1)~sex+log(thick)+sex+strata(ulc), data=melanom)
= basehaz(a)
六. 参数模型
fit = survreg(Surv(aml$time, aml$status)~aml$x, dist=&exponential&) fit = survreg( Surv(time, status)~x, data=aml, dist=&exponential&) predict(fit, type=&quantile&, p=c(0.1, 0.5, 0.9) )
七. 如何产生生存数据
#没有删失的数据
reg &- function(x , rates){
rexp (length(rates), rate=rates)
survreg(Surv(y, rep(1, length(y)))~x,dist=&weibull&)
coxph(Surv(y, rep(1, length(y)))~x)
return(c(fit1$coef[2], fit2$coef))
#有删失的数据
? simulate a lifetime vector
? simulate independently a termination time (censoring time) vector ? observe whichever comes
lifetimes &- rexp( 25, rate = 0.2)
censtimes &- 5 + 5*runif(25)
ztimes &- pmin(lifetimes, censtimes)
status &- as.numeric(censtime & lifetimes)
三亿文库包含各类专业文献、文学作品欣赏、中学教育、各类资格考试、外语学习资料、用R作生存分析43等内容。 
 Survival(生存分析 生存分析) SPSS Survival(生存分析) SPSS Survival 菜单包括 ...r Enter ing Inter val 949 200 132 43 median Numb er With draw ing ...  R语言生存分析大全_预防医学_医药卫生_专业资料。CRAN Task View: Survival ...R语言在做为数据分析工具... 4页 1下载券
R语言与统计分析第四章答... ...  二、生存分析的方法 1、生存分析的主要目的是估计生存函数,常用的方法有 Kaplan-Meier 法和寿 命表法。对于分组数据,在不考虑其他混杂因素的情况下,可以用这两种...  回归是生存分析中最重要的方法之一,其优点是适用范围很广和便于做多因素分析。...英国统计学家 Cox D R 提出了参数 bi 的估计和 检验方法,故称为 Cox 回归...  3.甲乙两医院历年乳腺癌手术资料见表 1,是否可以认为乙医院有术后 5 年生存...r2 ? r0.05( n 2' ) ,则可认为( C 15.对双变量资料作直线相关分析时...  某恶性肿瘤病人的生存情况分析-_临床医学_医药卫生_专业资料。用R语言对生存分析做实例分析,附完整代码;包括K-M模型、参数模型、Cox比例风险模型 ...  用管理赢得生存与发展 暂无评价 7页 免费 ...费用分析 B.活动时间持续最长的路线 68.网络图优化...已知某产品的间隔期 R=20 天, 计划期的平均日...  r=0 时,b=0 31.回归分析是研究 A. 两变量(X..., 要比较四组人群血型情况的差别,则要作 A. t ...则该慢性病的 3 年生存率的算法为 A. (0.9 + ...  有三个进程 R、W1、W2,进程 R 从输入设备上读数据送缓冲区 B,若是奇数由 ...职场生存攻略 思维导图经典案例 Excel键盘快捷键 Photoshop的抠图技巧分析©...}

我要回帖

更多关于 生存分析 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信