R生存曲线楼梯图格式?

时间:2016-02-23 20:54:40

标签: r plot graph

我目前正在尝试使用R生成生存曲线。然而,survfit()和Surv()函数以我所拥有的不同格式输入数据。 this示例中的数据给出了一堆生物和它们死亡之前的时间量,而Surv函数基本上计算了在任何给定时间内活着的个体的比例。

但是,我所拥有的数据格式不同。我有列表示日期编号,行表示每个试验,值表示在任何给定时间存活的百分比。目前,我理论上可以对这些做一个常规的情节,但我想制作一个类似楼梯的情节,类似于我在survfit()函数中得到的情节。我该怎么做?

以下是我使用的格式的一些示例数据。

            1   2   3   4   5   6   7   8   9   10
Treatment 1 100 95  90  86  82  78  74  70  67  64
Treatment 2 100 90  81  73  66  59  53  48  43  39
Treatment 3 100 85  72  61  52  44  37  31  26  22

dd <- structure(list(trial = structure(1:3, .Label = c("Treatment 1", 
"Treatment 2", "Treatment 3"), class = "factor"), X1 = c(100L, 
100L, 100L), X2 = c(95L, 90L, 85L), X3 = c(90L, 81L, 72L), X4 = c(86L, 
73L, 61L), X5 = c(82L, 66L, 52L), X6 = c(78L, 59L, 44L), X7 = c(74L, 
53L, 37L), X8 = c(70L, 48L, 31L), X9 = c(67L, 43L, 26L), X10 = c(64L, 
39L, 22L)), .Names = c("trial", "X1", "X2", "X3", "X4", "X5", 
"X6", "X7", "X8", "X9", "X10"), class = "data.frame", row.names = c(NA, 
-3L))

1 个答案:

答案 0 :(得分:2)

这是另一种方法,无需使用@rawr在评论中建议的for循环:

matplot(t(dd[,-1]),type = "s")