fitting more than one slope

questions concerning analysis/theory using programs M-SURGE, E-SURGE and U-CARE

fitting more than one slope

Postby amillon » Fri Jan 07, 2011 6:42 am

Hello,

I'm currently looking at ageing in survival and I want to compare the fit of several relationships between age and survival.
When looking at an age model (all age classes treated independently), the common pattern appears, with a slight increase of survival until a threshold followed by a decline.
I've fitted a quadratic model and different single-threshold models with slope before of after the threshold.
However, I'm not able to fit a model with different slopes (and intercept) around an age threshold (a roof-shape model, or broken stick as you like).
I've tried the following:
[i + a(2_9)*x(3)] + [i + a(10_17)*x(5)] (a(1) being fitted apart)
but it provides results not different from
[i + a(2_9)*x(3) + a(10_17)*x(5)]
that is to say, a single intercept is forced for the two slopes and I end up with two increasing slopes. While the second one should be clearly negative.
I cannot manage to get a beta for an additional intercept or (better actually) to force the intercept of the second slope to be equal to a(9).


Many thanks

ah ! just one more question: is it possible yet to fit non-linear functions, such as a logistic between survival and any given external covariates?

Alex
amillon
 
Posts: 2
Joined: Fri Dec 10, 2010 11:52 am

Re: fitting more than one slope

Postby sbonner » Fri Jan 07, 2011 9:28 am

Hi Alex,

You can do this by using a truncated linear function -- ie, a covariate which is 0 up to a certain point and then increases linearly thereafter. In combination with the standard linear covariate this will produce the broken stick model that you're looking for.

To have a break at t=9 the values of the covariates would be

t x1 x2
2 2 0
3 3 0
4 4 0
...
8 8 0
9 9 0
10 10 1
11 11 2
...

The model y(t)=b0 + b1 x1 + b2 x2 will then be piecewise linear with slope b1 up to t=9 and slope b1+b2 thereafter.

Unfortunately, I'm not a SURGE programmer, so I can't help you implement this model.

Best,

Simon
sbonner
 
Posts: 71
Joined: Mon Aug 15, 2005 7:38 pm
Location: University of Western Ontario, Canada

Re: fitting more than one slope

Postby CHOQUET » Mon Jan 10, 2011 7:03 am

Hello Alexandre,
By following the suggestions of Simon, the implementation will be

i+t*x(1)+t*x(2)

with
x(1)= 0 2 3 4 5 6 7 8 9 10 11 ....
x(2)= 0 0 0 0 0 0 0 0 0 1 2 ....

This is not the only one solution but this implementation is simple.
The zero at the beginning of x(1) implies that the survival at the first age is equal to the intercept.
This zero can be replaced by a 1, the interpretation of the intercept will not the same in that case.

Concerning non-linear functions related to risk-functions (Gomperz, Weibull, etc...), these functions
are under considerations (A paper on that subject is accepted on Method in Ecology in Evolution) in E-SURGE.
The NL functions with age can be fitted currently from matlab script.
We will try to fully incorporate them in E-SURGE quite soon !!.

For Splines, some nice works have been done by various authors (Simon Bonner, Anne Viallefont) but I don't implemented any of these approaches on E-SURGE.

Sincerely,

Rémi
CHOQUET
 
Posts: 212
Joined: Thu Nov 24, 2005 4:58 am
Location: CEFE, Montpellier, FRANCE.


Return to analysis help

Who is online

Users browsing this forum: No registered users and 1 guest

cron