On Nov 21, 2013, at 5:08 AM, Andrews, Chris wrote: > That subset will give you right truncation, not right censoring. See code > below. Use Thomas's solution.
I completely agree that my strategy was wrong. It inappropriately removed the long-lived cases from the riskset at earlier times so there would be an over-estimate of risk in proportion to the ratio of such cases to the entire population. -- David. > > Chris > > > library(survival) > set.seed(20131121) > ngroup <- 100 > xxx <- rep(0:1, e=ngroup) > ttt <- rexp(length(xxx), rate=xxx+.5) > plot(survfit(Surv(ttt) ~ xxx)) > survdiff(Surv(ttt) ~ xxx) > > # impose earlier stop time? > tstop <- 2 > lines(survfit(Surv(ttt) ~ xxx, subset=ttt<tstop), col=2) > survdiff(Surv(ttt) ~ xxx, subset=ttt<tstop) > > # censor at earlier stop time > ddd <- ttt<tstop > ttt2<- pmin(ttt, tstop) > > lines(survfit(Surv(ttt2, ddd) ~ xxx), col=3) > survdiff(Surv(ttt2, ddd) ~ xxx) > # green lines match black lines up to tstop > > > > > -----Original Message----- > From: David Winsemius [mailto:dwinsem...@comcast.net] > Sent: Wednesday, November 20, 2013 5:49 PM > To: Dr.Vinay Pitchika > Cc: r-help@r-project.org > Subject: Re: [R] How to stop Kaplan-Meier curve at a time point > > > On Nov 20, 2013, at 12:01 PM, Dr.Vinay Pitchika wrote: > >> Hello R users >> >> I have a question with Kaplan-Meier Curve with respect to my research. We >> have done a retrospective study on fillings in the tooth and their survival >> in relation to the many influencing factors. We had a long follow-up time >> (upto 8yrs for some variables). However, we decided to stop the analysis at >> the 6year follow up time, so that we can have uniform follow-up time for >> all the variables. >> >> I did play a bit with the formula and tried to stop the Kaplan-Meier curve >> at my desired time (2190days)or roughly 6 years. However, my question is I >> want to find the significance (log rank test) at this time point between >> the two curves; because I am not able to find a way to stop the survfit at >> this time point with my knowledge. Below is the code I used. >> >> Gender2<-survfit(Surv(Survival_days, Outcome)~Gender) > > I'm assuming that you have a dataframe with those variables and have attached > it. If so, then: > > dfrm <- detach(said_df) > > # If not, then: > > dfrm <- data.frame(Survival_days, Outcome, Gender) > > Gender2<-survfit(Surv(Survival_days, Outcome)~Gender, > data=dfrm, subset = Survival_days < 6*365.25 ) > >> >> plot (Gender2, xmax=2190, mark.time=FALSE, col=c(1:2), xlab="Survival time >> (Days)", ylab="Survival probability", main="Gender") # mark.time=FALSE will >> remove the censoring lines in the graph. If censoring lines are needed, >> then remove the mark.time section in the formula. >> >> legend("topright",c("Females", "Males"), col=(1:2), lwd=0.5) >> >> Am sure, the code in the first line has to be modified. Please help me with >> this and I will be very thankful to you. >> > > > David Winsemius > Alameda, CA, USA > > > ********************************************************** > Electronic Mail is not secure, may not be read every day, and should not be > used for urgent or sensitive issues > David Winsemius Alameda, CA, USA ______________________________________________ R-help@r-project.org 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.