Re: [R] Survival statistics--displaying multiple plots

From: Gregory Pierce <prcg_at_mac.com>
Date: Thu, 03 May 2007 00:34:25 -0400

Marc,

Thank you so much! Your solution is perfect! I hadn't known about the "cut" function. The graph is precisely what I needed. I have the ISwR book but not anything more advanced. Need to get some more advanced books, maybe?

I have been stubbornly working on this for a few hours now, and getting nowhere. I wish I were able to repay in some way.

Thank you!

Greg

-----Original Message-----
From: Marc Schwartz [mailto:marc_schwartz_at_comcast.net] Sent: Thursday, May 03, 2007 12:18 AM
To: Gregory Pierce
Cc: r-help_at_stat.math.ethz.ch
Subject: Re: [R] Survival statistics--displaying multiple plots

Greg,

I suspect that you want something like this:

Use the 'aml' dataset and create a 'meld' column with random values from 1:25:

library(survival)

set.seed(1)
aml$meld <- sample(25, 23, replace = TRUE)

> aml$meld

 [1] 7 10 15 23 6 23 24 17 16 2 6 5 18 10 20 13 18 25 10 20 24 6 [23] 17

Now use cut() to create a 3 level factor from the values in 'meld':

aml$meld.grp <- cut(aml$meld, breaks = c(-Inf, 10, 20, Inf))

> aml$meld.grp

 [1] (-Inf,10] (-Inf,10] (10,20]   (20, Inf] (-Inf,10] (20, Inf]
 [7] (20, Inf] (10,20]   (10,20]   (-Inf,10] (-Inf,10] (-Inf,10]
[13] (10,20]   (-Inf,10] (10,20]   (10,20]   (10,20]   (20, Inf]
[19] (-Inf,10] (10,20]   (20, Inf] (-Inf,10] (10,20]  
Levels: (-Inf,10] (10,20] (20, Inf]

Now, let's do the plot, grouping by 'meld.grp':

plot(survfit(Surv(time, status) ~ meld.grp, data = aml),

     col = 1:3, legend.text = levels(aml$meld.grp),
     legend.pos = 1)


If this is close, see ?cut for creating a factor from a continuous vector.

You can of course further tweak the plot aesthetics as you desire.

HTH, Marc Schwartz

On Wed, 2007-05-02 at 23:14 -0400, Gregory Pierce wrote:
> I should clarify. I can generate plots for each category individually but
> not for all three on the same chart.
>
> Greg
>
> -----Original Message-----
> From: Gregory Pierce [mailto:pierce.gregory_at_gmail.com]
> Sent: Wednesday, May 02, 2007 10:21 PM
> To: 'r-help_at_stat.math.ethz.ch'
> Subject: Survival statistics--displaying multiple plots
>
> Hello all!
>
> I am once again analyzing patient survival data with chronic liver
disease.
>
> The severity of the liver disease is given by a number which is
continuously
> variable. I have referred to this number as "meld"--model for end stage
> liver disease--which is the result of a mathematical calculation on
> underlying laboratory values. So, for example, I can generate a
Kaplan-Meier
> plot of patients undergoing a TIPS procedure with the following:
>
> >plot(survfit(Surv(days,status==1),subset(tips,meld<10))
>
> where "tips" is my data set, "days" is the number of days alive, and meld
is
> the meld score.
>
> What I would like to do is display the survival graphs of patients with
> meld<10, 10<meld<20, and meld>20. I am unsure about how to go about this.
>
> Any suggestions would be appreciated.
>
> Greg
>
> ______________________________________________
> R-help_at_stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.



R-help_at_stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. Received on Thu 03 May 2007 - 04:40:25 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Thu 03 May 2007 - 05:31:45 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.