-2

我在 15 个独立的类别中有 100 次重复,每个人的生存记录在 5 个不同的阶段。

数据示例如下:

Category           Stage of death
1                        3
1                        2
1                        3
1                        3
2                        1
2                        1
2                        1
2                        1
3                        5
3                        5
3                        4
3                        4
4                        3
4                        ..........etc

我也有阳性和阴性对照,并想比较这些组,看看哪些组的存活率显着降低。

任何推荐的统计分析或能够分析这些数据的 R 包都将很高兴收到。

4

1 回答 1

1

R中生存统计的基础是图书馆生存。这是您想要做的基础知识示例:使用 Cox 回归或对数秩检验比较两条生存曲线(Kaplan Meyer 曲线)。

library(survival)
library(Hmisc)
dummyex <- data.table(treatment_duration = sample(c(1:10), 50, replace = T), 
                     stopany = sample(c(0,1),50,replace = T), 
                     ID = 1:50) 
dummyex[,seropositive := sample(c(0,1),1),by = ID]

这里的变量 seropositive 给了我两条不同的曲线:一条是 seropositive = 1,一条是 seropositive = 0。它相当于你的类别。此处的 stopany 变量是表示您正在研究的事件是否发生的变量。这取决于您的数据中是否丢失了跟进。如果你这样做:

stopanydummy <- survfit(Surv(treatment_duration,stopany)~seropositive,data= dummyex)

它将为血清阳性的 2 个值构建两个生存图。

plot(stopanydummy[1], col = 1,main = "survival plot", xlab = "time",ylab = "proportion of patient still alive")
lines(stopanydummy[2],col = 2)

生存图

如果你想比较不同的生存曲线,你没有失去跟进,你将使用函数中实现的对数秩检验 survdiff。如果您失去跟进,您将使用 Cox 回归来获得风险比:

coxfitsimple <- coxph(Surv(treatment_duration,stopany) ~ seropositive, data=dummyex) 
Call:
coxph(formula = Surv(treatment_duration, stopany) ~ seropositive, 
    data = dummyex)

  n= 50, number of events= 28 

                coef exp(coef) se(coef)      z Pr(>|z|)
seropositive -0.3750    0.6873   0.4074 -0.921    0.357

             exp(coef) exp(-coef) lower .95 upper .95
seropositive    0.6873      1.455    0.3093     1.527

Concordance= 0.567  (se = 0.056 )
Rsquare= 0.017   (max possible= 0.976 )
Likelihood ratio test= 0.88  on 1 df,   p=0.348
Wald test            = 0.85  on 1 df,   p=0.3573
Score (logrank) test = 0.86  on 1 df,   p=0.3546

这里说血清阳性 = 1 具有保护作用(危险比 = 0.69),但 ap 值低(两条曲线之间没有统计学差异)

于 2018-01-16T14:26:07.177 回答