如何避免被截断的对象被删除?

时间:2019-04-09 18:55:39

标签: r survival-analysis survival

我正在对一些单独的组件保留在软件项目的源代码中的时间进行生存分析,但是其中的某些组件会被survfit函数删除。

这就是我在做什么:

library(survival)
data <- read.table(text = "component_id weeks removed
1              1       1
2              1       1
3              1       1
4              1       1
5              1       1
6              1       1
7              1       1
8              2       0
9              2       0
10              2       0
11              2       0
12              2       1
13              2       1
14              2       0
15              2       0
16              2       0
17              2       0
18              2       0
19              2       0
20              2       1
21              2       1
22              2       0
23              2       0
24              3       1
25              3       1
26              3       1
27              3       1
28              7       1
29              7       1
30             14       1
31             14       1
32             14       1
33             14       1
34             14       1
35             14       1
36             14       1
37             14       1
38             14       1
39             14       1
40             14       1
41             14       1
42             14       1
43             14       1
44             14       1
45             14       1
46             14       1
47             14       1
48             40       1
49             40       1
50             40       1
51             40       1
52             48       1
53             48       1
54             48       1
55             48       1
56             48       1
57             48       1
58             48       1
59             48       1
60             56       1
61             56       1
62             56       1
63             56       1
64             56       1
65             56       1
66             56       1
67             56       1
68             56       1
69             56       1", header = TRUE)

fit <- survfit(Surv(data$weeks, data$removed) ~ 1)
summary(fit, censored=TRUE)

这是输出

Call: survfit(formula = Surv(data$weeks, data$removed) ~ 1)

time n.risk n.event survival std.err lower 95% CI upper 95% CI
   1     69       7    0.899  0.0363        0.830        0.973
   2     62       4    0.841  0.0441        0.758        0.932
   3     46       4    0.767  0.0533        0.670        0.879
   7     42       2    0.731  0.0567        0.628        0.851
  14     40      18    0.402  0.0654        0.292        0.553
  40     22       4    0.329  0.0629        0.226        0.478
  48     18       8    0.183  0.0520        0.105        0.319
  56     10      10    0.000     NaN           NA           NA

我原本希望活动的数量为69,但是我删除了12个主题。

我最初以为我是在滥用包的功能,并在similar situation之后采用了type="interval2"的方法,但是随着主题和事件数量的不断增加,这种下降一直在发生:

as.t2 <- function(i, data) if (data$removed[i] == 1) data$weeks[i] else NA
size  <- length(data$weeks)
t1    <- data$weeks
t2    <- sapply(1:size, as.t2, data = data)
interval_fit <- survfit(Surv(t1, t2, type="interval2") ~ 1)
summary(interval_fit, censored=TRUE)

接下来,我找到了我所说的a mid-air explanation,进一步澄清了这种情况。我了解这是由于在“恒定的审查时间”之后出现了未经审查的主题所引起的,但是为什么呢?

这使我以某种方式更深入地研究了权利截断,并意识到研究类型与我所经历的下降非常接近。这是Klein&Moeschberger:

  

仅当观察事件时间在某个观察窗内的那些人时,才发生生存数据的截断。 $(Y_L,Y_R)$ 。没有观察到事件时间不在此间隔内的个人,调查人员也无法获得有关该主题的信息。

     

$ Y_L $ 等于零时,将发生右截断。也就是说,仅当 $ X \ leq Y_R $ 时,我们才观察生存时间 $ X $

从我的角度来看,这些滴剂无论进入什么时候都为我的研究提供了重要信息。

如何停止滴水?

0 个答案:

没有答案
相关问题