The macro below shows how you can compute a "rolling" standard deviation. For example, it gets the standard deviation for observations 1-25, then observations 2-26 then 3-27 … up to 476-500, and then saves this into a SAS data file.
%macro rollsd; proc delete data=all; run; %do firstobs = 1 %to 476; %let lastobs = %eval( &firstobs + 24); proc means data=test(firstobs=&firstobs obs=&lastobs); var x; output out=tempfile stddev=sd25; run; proc append base=all data=tempfile ; run; %end; %mend rollsd;