<?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 12 months data in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/Rolling-12-months-data/m-p/91309#M26055</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This is most of it I think.&amp;nbsp; You need to make you date info a SAS date.&lt;/P&gt;&lt;P&gt;The sort is different and I didn't calculate LOW HIGH or FLAG but you should be able to do that ok.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV style="font-family: Courier New; font-size: 11pt;"&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;data&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; test;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;input&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; year&amp;nbsp; month&amp;nbsp; a $ count;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; yymm = mdy(month,&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;1&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,year);&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;format&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; yymm &lt;/SPAN&gt;&lt;SPAN style="color: #008080; background-color: #ffffff;"&gt;yymm.&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;drop&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; year month;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;cards&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffc0;"&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 160&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 260&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 760&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 860&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 260&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 960&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 760&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 660&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 560&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 660&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 460&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 460&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 360&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 260&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 8&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 260&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 8&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 960&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 160&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 860&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 10&amp;nbsp; aa&amp;nbsp; 575&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 10&amp;nbsp; bb&amp;nbsp; 775&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 11&amp;nbsp; aa&amp;nbsp; 690&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 11&amp;nbsp; bb&amp;nbsp; 390&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 12&amp;nbsp; aa&amp;nbsp; 760&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 12&amp;nbsp; bb&amp;nbsp; 560&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 490&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 290&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 809&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 709&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 609&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 309&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;;;;;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;sql&lt;/STRONG&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;noprint&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;select&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; max(yymm) &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;into&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; :ref &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;from&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; test;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;quit&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;%put&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; NOTE: REF=&amp;amp;ref &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;%sysfunc&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;(putn(&amp;amp;ref,date,9));&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;summary&lt;/STRONG&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;data&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=test &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;nway&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;where&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; year(yymm) eq (year(&amp;amp;ref)-&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;1&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;);&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;class&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; a;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;var&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; count;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;output&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;out&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=lastyear(&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;drop&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=_:) &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;mean&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;mean&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;std&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;std&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;summary&lt;/STRONG&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;data&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=test &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;nway&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;where&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; intnx(&lt;/SPAN&gt;&lt;SPAN style="color: #800080; background-color: #ffffff;"&gt;'MONTH'&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,&amp;amp;ref,-&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;12&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;) le yymm le intnx(&lt;/SPAN&gt;&lt;SPAN style="color: #800080; background-color: #ffffff;"&gt;'MONTH'&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,&amp;amp;ref,-&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;1&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;);&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;class&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; a;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;var&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; count;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;output&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;out&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=last12months(&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;drop&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=_:) &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;mean&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;mean&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;std&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;std&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;data&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; stats;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;set&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; lastyear(&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;in&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=in1) last12months(&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;in&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=in2);&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;by&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; a;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;if&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; in1 &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;then&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; yymm = intnx(&lt;/SPAN&gt;&lt;SPAN style="color: #800080; background-color: #ffffff;"&gt;'YEAR'&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,&amp;amp;ref,-&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;1&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;);&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;else&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;if&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; in2 &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;then&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; yymm = intnx(&lt;/SPAN&gt;&lt;SPAN style="color: #800080; background-color: #ffffff;"&gt;'YEAR'&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,&amp;amp;ref,&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;0&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;);&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;format&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; _all_;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;sort&lt;/STRONG&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;data&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=test;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;by&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; a yymm;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;data&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; newtest;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;merge&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; test stats;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;by&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; a yymm &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;groupformat&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;format&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; yymm &lt;/SPAN&gt;&lt;SPAN style="color: #008080; background-color: #ffffff;"&gt;year.&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;if&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; yymm eq &amp;amp;ref &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;then&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;call&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; missing(of mean std); &lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;print&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;format&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; yymm &lt;/SPAN&gt;&lt;SPAN style="color: #008080; background-color: #ffffff;"&gt;yymm.&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 30 Jan 2013 17:25:19 GMT</pubDate>
    <dc:creator>data_null__</dc:creator>
    <dc:date>2013-01-30T17:25:19Z</dc:date>
    <item>
      <title>Rolling 12 months data</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Rolling-12-months-data/m-p/91308#M26054</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a 1+ year data, every month we need to run a program to procedure a report. In this report, it inculdes:&lt;/P&gt;&lt;P&gt;(1) mean, low range and high range of previous full year (2012) is base on previous full year (2012) data.&lt;/P&gt;&lt;P&gt;(2) Current month do not have full data, so mean, low range and high range will leave blank.&lt;/P&gt;&lt;P&gt;(3) The mean, low, high range for previous month of current year will based on previous 12 months data.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For example:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If I run this report on March 2013, then the mean, low and high range will base on 03/2012 to 02/2013 data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I created a program to produce this report; however, there are too many steps in the program. I am wondering if there is a way to simplify this program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The following data I used March 2013 as current month.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance for your help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data test;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; input year&amp;nbsp; month&amp;nbsp; a $ count;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; cards;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 160&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 260&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 760&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 860&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 260&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 960&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 760&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 660&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 560&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 660&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 460&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 460&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 360&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 260&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 8&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 260&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 8&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 960&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 160&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 860&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 10&amp;nbsp; aa&amp;nbsp; 575&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 10&amp;nbsp; bb&amp;nbsp; 775&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 11&amp;nbsp; aa&amp;nbsp; 690&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 11&amp;nbsp; bb&amp;nbsp; 390&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 12&amp;nbsp; aa&amp;nbsp; 760&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 12&amp;nbsp; bb&amp;nbsp; 560&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 490&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 290&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 809&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 709&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 609&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 309&lt;BR /&gt;;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;/***** Get the average and std for last full year and current month *****/&lt;BR /&gt;proc means data = test maxdec=2 noprint;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; where year = 2012&amp;nbsp; or year = 2013 and month = 3;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; class year a;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; var count;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; output out=avgqt0 mean=avg_count std=stdev;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;/***** Create a rolling 12 month date *****/&lt;BR /&gt;data test2;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; set test;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; do i = 0 to 3;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if year = 2013 and month = 3 then delete;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; if year = 2012 and month = i-1 then delete;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; end;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;/***** Compute mean and std for rolling 12 month data *****/&lt;BR /&gt;proc means data = test2 maxdec=2 noprint;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; class a;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; var count;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; output out=avgqt1 mean=avg_count std=stdev;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;/***** Get the range for previous full year *****/&lt;BR /&gt;/***** Set the mean for current month as Null since it is not a full month data *****/&lt;BR /&gt;data avgqt00;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; set avgqt0(drop=_freq_);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; if _type_ in (3);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; if year = 2012 then &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; two_stdev=round(2*stdev);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; avg_count = round(avg_count);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; low=avg_count-two_stdev;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; high=avg_count+two_stdev;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flag = 1;&lt;BR /&gt;&amp;nbsp; end;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; else &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; avg_count = .;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flag = 3;&lt;BR /&gt;&amp;nbsp; end;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; drop _type_ stdev two_stdev;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;/***** Get the range for rolling 12 month data*****/&lt;BR /&gt;data avgqt11;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; set avgqt1(drop=_freq_);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; if _type_ in (1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; two_stdev=round(2*stdev);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; avg_count = round(avg_count);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; low=avg_count-two_stdev;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; high=avg_count+two_stdev;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flag = 2;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; drop _type_ stdev two_stdev;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;PROC SORT DATA = test out=sort2012;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; where year = 2012&amp;nbsp; or year = 2013 and month = 3;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; by year a;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;/***** Merge previous full year and current month data back to original same period of time data *****/&amp;nbsp;&amp;nbsp; &lt;BR /&gt;data all2012;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; length flag2 $5;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; merge sort2012 (in = B)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; avgqt00&amp;nbsp; (in = C)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; ;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; by year a;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; if B;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; if year = 2012 then &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; do;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IF LOW &amp;lt;= a &amp;lt;= HIGH THEN FLAG2='OK';&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ELSE FLAG2 ='CHECK';&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; ELSE flag2 = ' '; &lt;BR /&gt;RUN;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;PROC SORT DATA = test out=sort2013;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; where year = 2013 and month ^= 3;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; by year a;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;/***** Merge rolling 12 month data back to original current year data except current month *****/&lt;BR /&gt;data all2013;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; length flag2 $5;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; merge sort2013 (in = B)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; avgqt11&amp;nbsp; (in = C)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; ;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; by a;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; if B;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; IF LOW &amp;lt;= a &amp;lt;= HIGH THEN FLAG2='OK';&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ELSE FLAG2 ='CHECK';&lt;BR /&gt;RUN;&lt;/P&gt;&lt;P&gt;/***** Combine these two data set to get the final report *****/&lt;BR /&gt;data all;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; set all2012 &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; all2013;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;proc sort data = all;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; by year flag;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;proc print data = all;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; var year month a count avg_count low high flag2;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 30 Jan 2013 15:27:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Rolling-12-months-data/m-p/91308#M26054</guid>
      <dc:creator>Belle</dc:creator>
      <dc:date>2013-01-30T15:27:52Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling 12 months data</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Rolling-12-months-data/m-p/91309#M26055</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This is most of it I think.&amp;nbsp; You need to make you date info a SAS date.&lt;/P&gt;&lt;P&gt;The sort is different and I didn't calculate LOW HIGH or FLAG but you should be able to do that ok.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV style="font-family: Courier New; font-size: 11pt;"&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;data&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; test;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;input&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; year&amp;nbsp; month&amp;nbsp; a $ count;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; yymm = mdy(month,&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;1&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,year);&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;format&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; yymm &lt;/SPAN&gt;&lt;SPAN style="color: #008080; background-color: #ffffff;"&gt;yymm.&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;drop&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; year month;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;cards&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffc0;"&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 160&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 260&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 760&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 860&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 260&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 960&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 760&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 660&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 560&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 660&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 460&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 460&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 360&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 260&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 8&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 260&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 8&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 960&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 160&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 860&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 10&amp;nbsp; aa&amp;nbsp; 575&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 10&amp;nbsp; bb&amp;nbsp; 775&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 11&amp;nbsp; aa&amp;nbsp; 690&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 11&amp;nbsp; bb&amp;nbsp; 390&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 12&amp;nbsp; aa&amp;nbsp; 760&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 12&amp;nbsp; bb&amp;nbsp; 560&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 490&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 290&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 809&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 709&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 609&lt;BR /&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 309&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;;;;;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;sql&lt;/STRONG&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;noprint&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;select&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; max(yymm) &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;into&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; :ref &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;from&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; test;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;quit&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;%put&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; NOTE: REF=&amp;amp;ref &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;%sysfunc&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;(putn(&amp;amp;ref,date,9));&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;summary&lt;/STRONG&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;data&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=test &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;nway&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;where&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; year(yymm) eq (year(&amp;amp;ref)-&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;1&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;);&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;class&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; a;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;var&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; count;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;output&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;out&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=lastyear(&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;drop&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=_:) &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;mean&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;mean&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;std&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;std&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;summary&lt;/STRONG&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;data&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=test &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;nway&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;where&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; intnx(&lt;/SPAN&gt;&lt;SPAN style="color: #800080; background-color: #ffffff;"&gt;'MONTH'&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,&amp;amp;ref,-&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;12&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;) le yymm le intnx(&lt;/SPAN&gt;&lt;SPAN style="color: #800080; background-color: #ffffff;"&gt;'MONTH'&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,&amp;amp;ref,-&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;1&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;);&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;class&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; a;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;var&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; count;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;output&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;out&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=last12months(&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;drop&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=_:) &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;mean&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;mean&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;std&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;std&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;data&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; stats;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;set&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; lastyear(&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;in&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=in1) last12months(&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;in&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=in2);&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;by&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; a;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;if&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; in1 &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;then&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; yymm = intnx(&lt;/SPAN&gt;&lt;SPAN style="color: #800080; background-color: #ffffff;"&gt;'YEAR'&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,&amp;amp;ref,-&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;1&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;);&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;else&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;if&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; in2 &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;then&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; yymm = intnx(&lt;/SPAN&gt;&lt;SPAN style="color: #800080; background-color: #ffffff;"&gt;'YEAR'&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,&amp;amp;ref,&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;0&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;);&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;format&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; _all_;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;sort&lt;/STRONG&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;data&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=test;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;by&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; a yymm;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;data&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; newtest;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;merge&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; test stats;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;by&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; a yymm &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;groupformat&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;format&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; yymm &lt;/SPAN&gt;&lt;SPAN style="color: #008080; background-color: #ffffff;"&gt;year.&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;if&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; yymm eq &amp;amp;ref &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;then&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;call&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; missing(of mean std); &lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;print&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;format&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; yymm &lt;/SPAN&gt;&lt;SPAN style="color: #008080; background-color: #ffffff;"&gt;yymm.&lt;/SPAN&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;STRONG style="color: #000080; background-color: #ffffff;"&gt;run&lt;/STRONG&gt;; &lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 30 Jan 2013 17:25:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Rolling-12-months-data/m-p/91309#M26055</guid>
      <dc:creator>data_null__</dc:creator>
      <dc:date>2013-01-30T17:25:19Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling 12 months data</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Rolling-12-months-data/m-p/91310#M26056</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I added a true date column in your test data:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data test;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; input year&amp;nbsp; month&amp;nbsp; a $ count;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; format dt date9.;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; dt = mdy(month,1,year);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; cards;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 160&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 260&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 760&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 860&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 260&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 960&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 760&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 660&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 560&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 660&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 460&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 460&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 360&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 260&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 8&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 260&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 8&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 960&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 160&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 860&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 10&amp;nbsp; aa&amp;nbsp; 575&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 10&amp;nbsp; bb&amp;nbsp; 775&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 11&amp;nbsp; aa&amp;nbsp; 690&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 11&amp;nbsp; bb&amp;nbsp; 390&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 12&amp;nbsp; aa&amp;nbsp; 760&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2012&amp;nbsp;&amp;nbsp; 12&amp;nbsp; bb&amp;nbsp; 560&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 490&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 290&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 809&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 709&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; aa&amp;nbsp; 609&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; bb&amp;nbsp; 309&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;select&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; case&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; when t1.dt = t2.curr_dt then 'Current'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; when t1.dt &amp;gt; intnx('month',t2.curr_dt,-13) then 'Prior Rolling 12 Months' &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end as Period&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,count(*) as Obs&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,avg(count) as Mean_Count&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,min(count) as Min_Count&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,max(count) as Max_Count&lt;/P&gt;&lt;P&gt;from&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; test t1, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; (select max(dt) format=date9. as curr_dt from test) t2&lt;/P&gt;&lt;P&gt;where calculated period is not null&lt;/P&gt;&lt;P&gt;group by calculated period&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;produces this dataset:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV align="center"&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" style="table-layout: fixed; padding: 0 3.0pt 0 3.0pt;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD style="border-top: none; border-left: solid black 1.0pt; border-bottom: solid black 1.0pt; border-right: none; background: white; padding: 0 3.0pt 0 3.0pt;" valign="top" width="142"&gt;&lt;P style="margin-top: 3pt; margin-bottom: 3pt;"&gt;&lt;SPAN style="font-family: 'Times','serif'; color: black;"&gt;Current&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD style="border-top: none; border-left: solid black 1.0pt; border-bottom: solid black 1.0pt; border-right: none; background: white; padding: 0 3.0pt 0 3.0pt;" valign="top" width="34"&gt;&lt;P align="right" style="margin-top: 3pt; margin-bottom: 3pt; text-align: right;"&gt;&lt;SPAN style="font-family: 'Times','serif'; color: black;"&gt;2&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD style="border-top: none; border-left: solid black 1.0pt; border-bottom: solid black 1.0pt; border-right: none; background: white; padding: 0 3.0pt 0 3.0pt;" valign="top" width="92"&gt;&lt;P align="right" style="margin-top: 3pt; margin-bottom: 3pt; text-align: right;"&gt;&lt;SPAN style="font-family: 'Times','serif'; color: black;"&gt;459&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD style="border-top: none; border-left: solid black 1.0pt; border-bottom: solid black 1.0pt; border-right: none; background: white; padding: 0 3.0pt 0 3.0pt;" valign="top" width="82"&gt;&lt;P align="right" style="margin-top: 3pt; margin-bottom: 3pt; text-align: right;"&gt;&lt;SPAN style="font-family: 'Times','serif'; color: black;"&gt;309&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD style="border: solid black 1.0pt; border-top: none; background: white; padding: 0 3.0pt 0 3.0pt;" valign="top" width="86"&gt;&lt;P align="right" style="margin-top: 3pt; margin-bottom: 3pt; text-align: right;"&gt;&lt;SPAN style="font-family: 'Times','serif'; color: black;"&gt;609&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="border-top: none; border-left: solid black 1.0pt; border-bottom: solid black 1.0pt; border-right: none; background: white; padding: 0 3.0pt 0 3.0pt;" valign="top" width="142"&gt;&lt;P style="margin-top: 3pt; margin-bottom: 3pt;"&gt;&lt;SPAN style="font-family: 'Times','serif'; color: black;"&gt;Prior Rolling 12 Months&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD style="border-top: none; border-left: solid black 1.0pt; border-bottom: solid black 1.0pt; border-right: none; background: white; padding: 0 3.0pt 0 3.0pt;" valign="top" width="34"&gt;&lt;P align="right" style="margin-top: 3pt; margin-bottom: 3pt; text-align: right;"&gt;&lt;SPAN style="font-family: 'Times','serif'; color: black;"&gt;24&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD style="border-top: none; border-left: solid black 1.0pt; border-bottom: solid black 1.0pt; border-right: none; background: white; padding: 0 3.0pt 0 3.0pt;" valign="top" width="92"&gt;&lt;OL style="list-style-type: decimal;"&gt;&lt;LI&gt;&lt;SPAN style="font-family: 'Times','serif'; color: black;"&gt;570.3333&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;/TD&gt;&lt;TD style="border-top: none; border-left: solid black 1.0pt; border-bottom: solid black 1.0pt; border-right: none; background: white; padding: 0 3.0pt 0 3.0pt;" valign="top" width="82"&gt;&lt;P align="right" style="margin-top: 3pt; margin-bottom: 3pt; text-align: right;"&gt;&lt;SPAN style="font-family: 'Times','serif'; color: black;"&gt;160&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD style="border: solid black 1.0pt; border-top: none; background: white; padding: 0 3.0pt 0 3.0pt;" valign="top" width="86"&gt;&lt;P align="right" style="margin-top: 3pt; margin-bottom: 3pt; text-align: right;"&gt;&lt;SPAN style="font-family: 'Times','serif'; color: black;"&gt;960&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 30 Jan 2013 17:27:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Rolling-12-months-data/m-p/91310#M26056</guid>
      <dc:creator>DBailey</dc:creator>
      <dc:date>2013-01-30T17:27:36Z</dc:date>
    </item>
    <item>
      <title>Re: Rolling 12 months data</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Rolling-12-months-data/m-p/91311#M26057</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you so much. Works well too.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 30 Jan 2013 18:56:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Rolling-12-months-data/m-p/91311#M26057</guid>
      <dc:creator>Belle</dc:creator>
      <dc:date>2013-01-30T18:56:43Z</dc:date>
    </item>
  </channel>
</rss>

