How to perform weighted average smoothing on an array in functional programming

I am new to functional programming and I am stumped by the following problem.

Given an array of numbers I am trying to compute the following smoothing.

For 1 < I < length(Array): (1/4)*(Array[I-1] + (3/4)*Array[I] + (1/4)*Array[I+1]

I am having trouble coming up with a good strategy to come up with a solution in Erlang, since I need to somehow keep track of where I am in the list.

Any direction would be very helpful.