Joystick acceleration

What is the most efficient way to capture the analogue stick acceleration?

If I try:

(currentAxes - prevAxes) / Time.deltaTime

I often get no change between current and prev. I would like an average acceleration, probably over about 20 frames. I’m guessing I need to capture that last 20 axes value. But then how do I add to last in the array and push the other elements down? What is the best way to do this efficiently? I have googled but couldn’t find a solution.
Thanks!

Uses a Queue(). Has methods Queue.Enqueue() Queue.Dequeue() to pop and shift.