I had previously posted this question at StackOVerflow but given it seems more about probability than programming I thought this forum mind give it a more suitable environment.

I need to understand the Survival Analysis concept of MEAN RESIDUAL LIFE.

I haven't found anything that to my mind gives me a complete and clear definition. Definitions I have found embedded in papers include:

The mean residual life function (mrlf) of a subject is defined as the average residual lifetime of the subject given that the subject has survived up to a given time point.



The function E[S|t], the expected additional lifetime given that a component has survived until time t, is called the mean residual lifetime (MRL) function.


one more:

In life testing situations, the expected additional lifetime given that a component has survived until time t is a function of t, called the mean residual life. More specifically, if the random variable X represents the life of a component, then the mean residual life is given by m(t) = E(X - t|X>t).


Buried in Mathematica's documentation I found two references for calculating mean residual life, which I've put into similar functions.

MRL1[variable_, distribution_] := NExpectation[X \[Conditioned] X > variable, 
   X \[Distributed] distribution] - variable 

MRL2[variable_, distribution_] := NExpectation[X - variable \[Conditioned] X > variable, 
      X \[Distributed] distribution]

You can find the references at:

"http : // www.wolfram.com/mathematica/new - in - 8/nonparametric - derived - and - formula - distributions/analyze - left-- right-- and - interval - censored - data.html"



The second of these corresponds in form to the third of the above definitions. One can see that the 2 functions produce the same results:

dist = LogNormalDistribution[1.75, 0.65];
var = 6;
MRL1[var, dist]
MRL2[var, dist]


For those of you with access to Mathematica, I put together a manipulate to illustrate this idea using the first of the above functions:

dist = LogNormalDistribution[1.75, 0.65];
  mrl = MRL1[t , dist];
  Column[{"MEAN RESIDUAL LIFE?", " ", "PDF",
    Show[ListPlot[{{t , N[PDF[dist, t ]]}, {mrl, N[PDF[dist, mrl]]}},
      ImageSize -> 350,
      PlotRange -> All,
      Prolog -> {Text["MRL", {mrl, .01}], Text["t", {t, .02}]},
      Filling -> Axis,
      FillingStyle -> Lighter[Red],
      AxesOrigin -> {0, 0}],
     Plot[PDF[dist, x], {x, 0, 40}]],
    " ",
    Show[ListPlot[{{t , N[CDF[dist, t ]]}, {mrl, N[CDF[dist, mrl]]}},
      ImageSize -> 350,
      PlotRange -> All,
      Prolog -> {Text["MRL", {mrl, .1}], Text["t", {t, .2}]},
      Filling -> Axis,
      FillingStyle -> Lighter[Red],
      AxesOrigin -> {0, 0}],
     Plot[CDF[dist, x], {x, 0, 40}]],
    Grid[{{"t ", t}, {"MRL ", mrl}, {"Mean[dist] ", 
       Mean[dist]}, {"PDF at t", N[PDF[dist, t ]]}, {"CDF at t", 
       N[CDF[dist, t ]]}}, Alignment -> Left]}]],
 {t, 0, 40}]

To put this a some context, the x axis could represent time (life expectancy, time to failure of a part) or some other quantity such as distance (miles a car runs before breaking down or how far a trend in a stock can run).

The value "t" corresponding to the x axis initializes at 0.

Some observations:

Mean[dist] = 7.10821.

Where t = 0, MRL = 7.10819 (pretty close to the mean).

As t increases towards MRL, MRL decreases.

At t = 4.7985, t = MRL (at least to 4 decimal places).

As t increases beyond MRL it drags MRL higher.

When (for this distribution) t reaches a bit over 25, MRL begins to exceed the mean of the distribution.

When I first came across mean residual life, I thought it would represent the expectation of everything beyond t and that as t increased MRL would have to increase. If someone lives to 80 years old, wouldn't they have some (if small) expectation of living longer? Some average in the tail of the distribution?

Maybe MRL doesn't make sense if t > MRL.

If 0 < t < MRL why should one's expectation be less than the mean of the distribution?

I feel a bit thick headed on this, as if I've missed some basic intuitive grasp of the idea. I just hoped someone on the forum could give me an insight into this and how to apply it.

Thanks, J


The MRL at time $t$ is the mean additional time after time $t$ that you expect an entity to survive, given that it has survived until time $t$. It does not include the time from time 0 to time $t$ that the entity has already lived through, so it it is possible for it to be less than the mean lifetime if $t>0$. It must equal the mean lifetime if $t=0$.

Whether the MRL will increase, decrease, or remain constant with time depends on the lifetime distribution. For example, if the lifetime is deterministic and always equal to 10, the MRL would be 10 at $t=0$, 9 at $t=1$, $\ldots$, 1 at $t=9$, and undefined if $t>10$ (since nothing survives to after time 10.) In this case the MRL is strictly decreasing with time. On the other hand, if, after some time $t_0>0$ the lifetime $X$ has a power-law distribution, $$ {\Bbb P}(X>t)=Ct^{-\alpha}, \qquad C>0,\ \alpha>1, \ t>t_0, $$ then for all $t>t_0$, $$ {\Bbb E}(X\mid X>t)=\frac{\alpha}{\alpha-1} t $$ and so in this epoch the MRL is $t/(\alpha-1)$, which increases with time.

Finally, if the lifetime $X$ is exponential, $$ {\Bbb P}(X>t)=e^{-\beta t}, \qquad \beta>0, $$ then the MRL will be constant and equal to the mean lifetime $\beta^{-1}$; this is because, in this case, the death rate, $\beta$, is constant with time.

  • $\begingroup$ David -- Thanks for this. Very helpful. I'll probably have a follow up question. I've tried to accept your answer, but I've got some kind of registration / log in problems. Hope to resolve it soon. $\endgroup$ – Jagra Feb 1 '12 at 17:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.