Pyrite | Level 9

## Computation with summation

Hi how can I compute this, see attachment

S(t)     X_i

.9        1

.8        2

.7        3

.6       4

.5      5

SAS code for

Sum_{i:X_i >= t*}  {S(max(t*,X_i))-S(X_{i+1}}*{(X_{i+1}-max(t*,X_i)}

1 ACCEPTED SOLUTION

Accepted Solutions
SAS Super FREQ

## Re: Computation with summation

BTW, should the last item in your 10:05 response be

... + (0.9-0.5)(5-1) ?

6 REPLIES 6
SAS Super FREQ

## Re: Computation with summation

What have you tried that is not working?

I would use the LOC function to find the i.

I would use the CHOOSE function to form max(T*, X_i)

However, there's an X_{i+1} term that is confusing me. For example, what sum do you expect when t*=5?

Pyrite | Level 9

## Re: Computation with summation

Thanks Rick, what I wrote is confusing because I cant write math equations here. But this is what I need from above data this is the solution;

(0.9-0.8)(2-1)  +  (0.9-0.7)(3-1) +  (0.9-0.6)(4-1) + (0.5-0.9)(5-1)

I am having issue writing the code

SAS Super FREQ

## Re: Computation with summation

What is t* for your example? Is t* = 1?

From your notation it looks like S(t) might be a survival function. Can we assume that S(t) is montonic increasing (or at least nondecreasing)?

Pyrite | Level 9

## Re: Computation with summation

Yes, it is survival, I just constructed this example  in order to help build the code. It is decreasing function.

Thanks

SAS Super FREQ

## Re: Computation with summation

BTW, should the last item in your 10:05 response be

... + (0.9-0.5)(5-1) ?

SAS Super FREQ

## Re: Computation with summation

Is this what you want?

proc iml;
S = T(do(0.9, 0.5, -0.1));
X = T(1:5);
t = 1;  /* special reference point */

dS = S - S;
dX = X - X;
sum = dS` * dX;
print sum;

From The DO Loop