On Sat, 8 Dec 2007, Charles C. Berry wrote: > Gad Abraham <g.abraham <at> ms.unimelb.edu.au> writes: > >> >> Hi, >> >> I'm using natural cubic splines from splines::ns() in survival >> regression (regressing inter-arrival times of patients to a queue on >> queue size). The queue size fluctuates between 3600 and 3900. >> >> I would like to be able to run predict.survreg() for sizes <3600 and >> >3900 by assuming that the rate for <3600 is the same as for 3600 and >> that for >4000 it's the same as for 4000 (i.e., keep the splines cubic >> within the boundaries but make them constant outside the boundaries). >> > > [snip] > >> Any suggestions? > > Here is one. > >> range(ovarian$age) > [1] 38.8932 74.5041 >> trim <- function(x) pmin(74.5041 ,pmax(38.8932 , x)) >> s <- survreg(Surv(futime, fustat) ~ ns(age, knots=c(50, > 60),Boundary.knots=c(38.8932, 74.5041)),data=ovarian) >> s2 <- survreg(Surv(futime, fustat) ~ ns(trim(age), knots=c(50, > 60),Boundary.knots=c(38.8932, 74.5041)),data=ovarian)
Should have copy-and-pasted this here: newage <- data.frame( age=seq(10,200,10 ) ) >> matplot(newage, cbind(predict(s,newdata=newage),predict(s2,newdata=newage))) Sorry 'bout the line wraps and bad formatting. Chuck -- Charles C. Berry (858) 534-2098 Dept of Family/Preventive Medicine E mailto:[EMAIL PROTECTED] UC San Diego http://famprevmed.ucsd.edu/faculty/cberry/ La Jolla, San Diego 92093-0901 ______________________________________________ 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.