<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Rolling percentiles in Statistical Procedures</title>
    <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798749#M39284</link>
    <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/22290"&gt;@costasRO&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;I have tried this code without success as I do not have a set number of lags (here 252) because the number of companies changes. So the code must determine the lags based on time.&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;One way might be to make sure &lt;STRONG&gt;all the companies&lt;/STRONG&gt; are present for &lt;STRONG&gt;all the time periods&lt;/STRONG&gt;. Missing values for the value of the variable(s) you are calculating statistics for should be handled correctly. You would have to calculate the lag value I very much doubt your data matches the OP in that other thread. The magic number 252 was based on his data. &lt;/P&gt;</description>
    <pubDate>Fri, 25 Feb 2022 22:10:54 GMT</pubDate>
    <dc:creator>ballardw</dc:creator>
    <dc:date>2022-02-25T22:10:54Z</dc:date>
    <item>
      <title>Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798615#M39267</link>
      <description>&lt;P&gt;Hi All,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I have some data that look like this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;year&amp;nbsp; &amp;nbsp;month&amp;nbsp; &amp;nbsp; &amp;nbsp; Company&amp;nbsp; &amp;nbsp; &amp;nbsp;x&lt;/P&gt;
&lt;P&gt;1970&amp;nbsp; &amp;nbsp; &amp;nbsp;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0.01&lt;/P&gt;
&lt;P&gt;1970&amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; B&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0.02&lt;/P&gt;
&lt;P&gt;1970&amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; C&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0.03&lt;/P&gt;
&lt;P&gt;.&amp;nbsp; ..&amp;nbsp;&lt;/P&gt;
&lt;P&gt;1970&amp;nbsp; &amp;nbsp; &amp;nbsp;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0.05&lt;/P&gt;
&lt;P&gt;1970&amp;nbsp; &amp;nbsp; &amp;nbsp;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;B&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0.04&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I would like to calculate the moving&amp;nbsp; 90th percentile (p90) of x, across all companies and dates, using 15 years of lagged data.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;So,&amp;nbsp; the variable I want&amp;nbsp; would start having non-missing values in 1/1985, and always be calculated from the distribution of 15 years of past data, i.e.,&amp;nbsp;the value in 1/1985 would be based on the distribution from 1/1970-12/1984, the value in 2/1985 would be based on 2/1970-1/1985, etc.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank you very much in advance.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Costas&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 25 Feb 2022 15:57:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798615#M39267</guid>
      <dc:creator>costasRO</dc:creator>
      <dc:date>2022-02-25T15:57:53Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798624#M39268</link>
      <description>&lt;P&gt;A simple search of the SAS Community finds a bunch of possible solutions, such as&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://communities.sas.com/t5/SAS-Procedures/Computation-of-backward-moving-percentiles/td-p/129651" target="_blank"&gt;https://communities.sas.com/t5/SAS-Procedures/Computation-of-backward-moving-percentiles/td-p/129651&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I leave it up to you to find others.&lt;/P&gt;</description>
      <pubDate>Fri, 25 Feb 2022 16:06:02 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798624#M39268</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2022-02-25T16:06:02Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798627#M39270</link>
      <description>&lt;P&gt;I have tried this code without success as I do not have a set number of lags (here 252) because the number of companies changes. So the code must determine the lags based on time.&lt;/P&gt;</description>
      <pubDate>Fri, 25 Feb 2022 16:09:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798627#M39270</guid>
      <dc:creator>costasRO</dc:creator>
      <dc:date>2022-02-25T16:09:34Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798629#M39272</link>
      <description>&lt;P&gt;You can use &lt;A href="https://blogs.sas.com/content/iml/2017/02/13/run-1000-regressions.html" target="_self"&gt;this method&lt;/A&gt; in which thousands of regressions are performed (scroll down to the section entitled "The BY way for many models"). Instead of running PROC REG, use PROC UNIVARIATE to compute the desired percentiles.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 25 Feb 2022 16:19:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798629#M39272</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2022-02-25T16:19:00Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798698#M39276</link>
      <description>You probably want to create a macro then that filters based on the date and loops across the dates. &lt;BR /&gt;&lt;BR /&gt;First combine year/month to create a date variable. If your data set is large, I'd suggest creating an index on that variable. &lt;BR /&gt;Then filter based on dates, 15*12 = 180 month using a WHERE statement, and calculate your stats using PROC MEANS/SUMMARY/UNIVARIATE.&lt;BR /&gt;&lt;BR /&gt;Once that is accomplished, you can use a macro loop to iterate through and do all your intervals and combine the results. In this method the number of companies is irrelevant.</description>
      <pubDate>Fri, 25 Feb 2022 18:01:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798698#M39276</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2022-02-25T18:01:20Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798699#M39277</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13879"&gt;@Reeza&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;You probably want to create a macro ...&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Why not BY groups, and no macro at all?&lt;/P&gt;</description>
      <pubDate>Fri, 25 Feb 2022 18:03:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798699#M39277</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2022-02-25T18:03:08Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798710#M39278</link>
      <description>Because this screams WRDS data that is big and for BY group and moving stats you typically need to replicate the data as well unless I'm missing some trick for BY groups handling moving windows. &lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Fri, 25 Feb 2022 18:31:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798710#M39278</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2022-02-25T18:31:11Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798729#M39279</link>
      <description>&lt;P&gt;Well, that is the BY group trick for rolling statistics, and I guess the best method depends on how big the data set really is.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;One thing that is not clear in the description of the problem from&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/22290"&gt;@costasRO&lt;/a&gt;&amp;nbsp;is exactly what dimensions are we doing the rolling in. Do we want rolling statistics within a company? Or do we perform rolling statistics across all companies and time periods? Or something else?&lt;/P&gt;</description>
      <pubDate>Fri, 25 Feb 2022 19:22:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798729#M39279</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2022-02-25T19:22:46Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798732#M39281</link>
      <description>From what I understood it's across all companies, monthly rolling for essentially 180 month window. &lt;BR /&gt;&lt;BR /&gt;They've stated that they can't use arrays as it's across all companies so its not within companies. SASHELP.STOCKS it a fairly similar structure I would guess based on what they've posted so far, I just don't have time to code a solution. &lt;BR /&gt;&lt;BR /&gt;Something roughly like this would be my guess - the macro loop would need to be adjusted.&lt;BR /&gt;&lt;A href="https://gist.github.com/statgeek/e5e43ff45a4ba1f64d0873ff3bc35974" target="_blank"&gt;https://gist.github.com/statgeek/e5e43ff45a4ba1f64d0873ff3bc35974&lt;/A&gt;</description>
      <pubDate>Fri, 25 Feb 2022 19:45:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798732#M39281</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2022-02-25T19:45:21Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798737#M39282</link>
      <description>&lt;P&gt;Ok, that's a good example of computing rolling statistics. I'm not convinced it would be faster than the BY variable approach, but unless I choose to program both approaches up, I am not certain which would be faster.&lt;/P&gt;</description>
      <pubDate>Fri, 25 Feb 2022 19:51:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798737#M39282</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2022-02-25T19:51:16Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798749#M39284</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/22290"&gt;@costasRO&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;I have tried this code without success as I do not have a set number of lags (here 252) because the number of companies changes. So the code must determine the lags based on time.&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;One way might be to make sure &lt;STRONG&gt;all the companies&lt;/STRONG&gt; are present for &lt;STRONG&gt;all the time periods&lt;/STRONG&gt;. Missing values for the value of the variable(s) you are calculating statistics for should be handled correctly. You would have to calculate the lag value I very much doubt your data matches the OP in that other thread. The magic number 252 was based on his data. &lt;/P&gt;</description>
      <pubDate>Fri, 25 Feb 2022 22:10:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798749#M39284</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2022-02-25T22:10:54Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798792#M39289</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/22290"&gt;@costasRO&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;Hi All,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I have some data that look like this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;year&amp;nbsp; &amp;nbsp;month&amp;nbsp; &amp;nbsp; &amp;nbsp; Company&amp;nbsp; &amp;nbsp; &amp;nbsp;x&lt;/P&gt;
&lt;P&gt;1970&amp;nbsp; &amp;nbsp; &amp;nbsp;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0.01&lt;/P&gt;
&lt;P&gt;1970&amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; B&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0.02&lt;/P&gt;
&lt;P&gt;1970&amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; C&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0.03&lt;/P&gt;
&lt;P&gt;.&amp;nbsp; ..&amp;nbsp;&lt;/P&gt;
&lt;P&gt;1970&amp;nbsp; &amp;nbsp; &amp;nbsp;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0.05&lt;/P&gt;
&lt;P&gt;1970&amp;nbsp; &amp;nbsp; &amp;nbsp;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;B&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0.04&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I would like to calculate the moving&amp;nbsp; 90th percentile (p90) of x, across all companies and dates, using 15 years of lagged data.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;So,&amp;nbsp; the variable I want&amp;nbsp; would start having non-missing values in 1/1985, and always be calculated from the distribution of 15 years of past data, i.e.,&amp;nbsp;the value in 1/1985 would be based on the distribution from 1/1970-12/1984, the value in 2/1985 would be based on 2/1970-1/1985, etc.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank you very much in advance.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Costas&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
set sashelp.stocks;
run;

*sort for faster processing and add index;
proc sort data=have out=have (index=(date));
by date;
run;


options mprint symbolgen;
%macro rolling_p90(ds_in = , window = , ds_out=);

*select minimum date and maximum date;
proc sql noprint;
select min(date) into :min_date
from &amp;amp;ds_in.;
select max(date) into :max_date
from &amp;amp;ds_in.;
quit;

*determine number of months between start and end date;
%let n_months = %sysfunc(intck(month, &amp;amp;min_date, &amp;amp;max_date));

%put &amp;amp;n_months.;
%put &amp;amp;window.;

*start of loop;

%do i=1 %to %eval(&amp;amp;n_months - &amp;amp;window.);

*get start of period;
%let period_start = %sysfunc(intnx(month, &amp;amp;min_date., %eval(&amp;amp;i-1), b));
%put &amp;amp;period_start;
*calculate end of period;
%let period_end = %sysfunc(intnx(month, &amp;amp;period_start., &amp;amp;window.-1, e));

*calculate summary statistics;
proc means data=&amp;amp;ds_in. noprint nway;
where date between  &amp;amp;period_start. and &amp;amp;period_end.;
var open;
output out=summary p90=p90;
run;

*add in date window for comparison;
data summary;
set summary;
period_start = &amp;amp;period_start;
period_end = &amp;amp;period_end.;
format period_: date9.;
run;

*append to main data set;
proc append base=&amp;amp;ds_out data=summary force;
run;

*drop table between loops;
proc sql;
drop table summary;
quit;

%end;

%mend;

%rolling_p90(ds_in = have , window = 24 , ds_out= want);&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Sat, 26 Feb 2022 02:45:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798792#M39289</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2022-02-26T02:45:39Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798809#M39290</link>
      <description>&lt;P&gt;Assuming there are no missing values of X, and that Companies are ignored for the computation, we can use sashelp.stocks as an example data set. Ksharp's code is adapted and just for verification a window size of 4 is used and PCTL = 50 (median) is computed. You could modify to 180 for window and&amp;nbsp; 90 for PCTL.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data stocks;
	set sashelp.stocks (keep =  stock date close);
run;

%let window_size = 4;

data want;
	set stocks;
	array k[0:%eval(&amp;amp;window_size. -1)] _temporary_;
	k[mod(_n_, &amp;amp;window_size)] = close;
	pct_50 = pctl(50,of k[*]);
	if _n_ &amp;lt; &amp;amp;window_size then pct_50 = .; 
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Hope this helps.&lt;/P&gt;</description>
      <pubDate>Sat, 26 Feb 2022 05:51:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798809#M39290</guid>
      <dc:creator>KachiM</dc:creator>
      <dc:date>2022-02-26T05:51:34Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling percentiles</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798843#M39291</link>
      <description>&lt;P&gt;Dear &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13879"&gt;@Reeza&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Indeed this is WRDS data, and I have thousands of companies per year-month.&lt;/P&gt;
&lt;P&gt;The macro below works perfectly.&lt;/P&gt;
&lt;P&gt;Thank you very much!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 26 Feb 2022 13:45:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Rolling-percentiles/m-p/798843#M39291</guid>
      <dc:creator>costasRO</dc:creator>
      <dc:date>2022-02-26T13:45:24Z</dc:date>
    </item>
  </channel>
</rss>

