Skip to content

Recursive calculation of a series of values

2 messages · Luis Torgo, Bert Gunter

#
Dear R-users,

I'm felling kind of blocked on a quite simple problem and I wonder if
someone could give me a help with it.

My problem:

x[0] = 100
x[1] = (1+v[1])*x[0]
x[2] = (1+v[2])*x[1]
...

i.e.

x[i] = (1+v[i])*x[i-1]
and x[0]=k

Given a set of v values I wanted to obtain the corresponding x values in
an efficient way (i.e. without a for loop).

For instance, if x[0] = 100 and v = c(0.2,-0.1,0.05) then I would get 
x = c(120,108,113.4)

I'm almost sure the function filter() from package tseries is the key
for getting these values but I'm really blocked.

Any help is much appreciated.

LuÃ­s Torgo
#
Algebra:
cumprod(1+v)*x[0]

-- Bert Gunter
Genentech Non-Clinical Statistics
South San Francisco, CA
 
"The business of the statistician is to catalyze the scientific learning
process."  - George E. P. Box