Calculate the Progressive Mean™
R, 57 bytes



function(v,`!`=sum,N=!1^v)c(A&lt;-!v/N,P&lt;-!v/2^c(N:1,N),P-A)


Try it online!

A clever collaboration with digEmAll and RobinRyder; uses the observation by Grimmy and Kevin's explanation from the comments, which I replicate below:


  For anyone else wondering why the example [a,b,c,d] -&gt; [a,b,c,c,d,d,d,d] doesn't match the explanation of the code, it actually transforms [a,b,c,d] to [a,b,b,c,c,c,c,d,d,d,d,d,d,d,d,a] (so two of each value in comparison to the example). The example confused me for a moment. But nice answer, +1 from me! I also like that it has all these different types of the letter 'A' in the code: āÅÅAÂÆª. xD


This uses R's recycling rules to use two copies of l[1]/2^N in the sumby just sticking an extra N at the end of the decay rate.

R, 62 bytes



function(l)c(p&lt;-Reduce(function(x,y)(x+y)/2,l),a&lt;-mean(l),p-a)


Try it online!

Straightforward implementation.