如何处理R的cuminc函数的输出

时间:2019-03-16 17:47:00

标签: r simulation

例如,在控制台中,

> x=cuminc(ftime=c(1,2,3,4,5,6,5,4),c(1,0,0,1,1,0,0,0),0)
> x
Estimates and Variances:
$`est`
        1     2     3   4         5
0 1 0.125 0.125 0.125 0.3 0.5333333

$var
       1        2        3        4      5
0 1 0.015625 0.015625 0.015625 0.040625 0.0725

我将如何获取“最新”数据?

1 个答案:

答案 0 :(得分:0)

如果我们检查str(x),它是一个嵌套列表

library(cmprsk)
str(x)
#List of 1
# $ 0 1:List of 3
#  ..$ time: num [1:8] 0 1 1 4 4 5 5 6
#  ..$ est : num [1:8] 0 0 0.125 0.125 0.3 ...
#  ..$ var : num [1:8] 0 0 0.0156 0.0156 0.0406 ...
# - attr(*, "class")= chr "cuminc"

list提取[[,然后使用$[[提取“ est”元素

x[[1]]$est
#[1] 0.0000000 0.0000000 0.1250000 0.1250000 0.3000000 0.3000000 0.5333333 0.5333333

如果我们希望获得与印刷估算中相同的输出

d1 <- data.frame(x[[1]][1:2])
library(dplyr)
library(tidyr)
d1 %>% 
  distinct(est, .keep_all = TRUE) %>% 
  filter(time > 0) %>%
  complete(time = full_seq(c(min(time), max(time)), 1)) %>% 
  fill(est) %>% 
  pull(est)
#[1] 0.1250000 0.1250000 0.1250000 0.3000000 0.5333333