<?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: how to calculate a rolling average in SAS Data Management</title>
    <link>https://communities.sas.com/t5/SAS-Data-Management/how-to-calculate-a-rolling-average/m-p/155314#M2719</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;data have;
input ID $ Week Count;
cards;
D1 1 13
D1 2 11
D1 3 9
D1 4 8
D1 5 10
D1 6 9
D1 7 5
D1 8 7
C1 2 1
C1 4 4
C1 5 5
C1 7 2
C1 8 3
C1 9 5
C1 10 2
E1 3 7
E1 5 9
E1 6 7
E1 8 5
E1 9 7
;
run;

proc sql;
create table want as
select x.*,case when week lt 4 then .
&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; else (select sum(count)/4 from have where id=x.id and week between x.week-3 and x.week)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end as average
from (
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select t1.id, t1.week, coalesce(t2.count, 0) as count
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from ( select * from (select distinct id from have),(select distinct week from have) ) as t1
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; left join have as t2 on t1.id=t2.id and t1.week=t2.week 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ) as x;
quit;

&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Xia Keshan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 18 Dec 2014 12:28:59 GMT</pubDate>
    <dc:creator>Ksharp</dc:creator>
    <dc:date>2014-12-18T12:28:59Z</dc:date>
    <item>
      <title>how to calculate a rolling average</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/how-to-calculate-a-rolling-average/m-p/155311#M2716</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;I'm hoping someone can help me solve this.&amp;nbsp; I've been looking up proc expand as a possible solution, but haven't had any luck.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm trying to create a moving average, but my data has some gaps and I want the moving average to reset each time I get to a &lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;new ID.&amp;nbsp; Each ID should have 10 weeks of data, but sometimes, the information isn't complete (e.g missing weeks of data)... so my data set looks something like this:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" width="192"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class="xl63" height="20" width="64"&gt;ID&lt;/TD&gt;&lt;TD class="xl63" style="border-left: none;" width="64"&gt;Week &lt;/TD&gt;&lt;TD class="xl63" style="border-left: none;" width="64"&gt;Count&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;13&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;2&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;11&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;3&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;9&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;4&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;8&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;6&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;9&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;7&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;8&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;7&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;2&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;4&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;7&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;8&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;9&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;10&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;E1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;3&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;7&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;E1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;9&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;E1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;6&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;7&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;E1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;8&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl64" height="20" style="border-top: none;"&gt;E1&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;9&lt;/TD&gt;&lt;TD class="xl64" style="border-top: none; border-left: none;"&gt;7&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The resulting data set I'm trying to get is this.&amp;nbsp; Where all IDs have 10 weeks, and when &lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;there is a week missing, the Count value is set to zero, and the average is based on the the 4 previous values (e.g. average for week 4 for ID D1 is (13+11+9+8)/4 .&amp;nbsp; But once I get to a new ID, I'd like the average to re-set.&lt;/SPAN&gt;&lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" style="width: 256px;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" width="64"&gt;ID&lt;/TD&gt;&lt;TD class="xl65" style="border-left: none;" width="64"&gt;Week &lt;/TD&gt;&lt;TD class="xl65" style="border-left: none;" width="64"&gt;Count&lt;/TD&gt;&lt;TD class="xl69" style="border-left: none;" width="64"&gt;Average&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;13&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;2&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;11&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;3&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;9&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;4&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;8&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;10&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;6&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;9&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;9&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;7&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;8&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;D1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;8&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;7&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;8&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl67" height="20" style="border-top: none;"&gt;&lt;STRONG&gt;D1&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;9&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;0&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;5&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl67" height="20" style="border-top: none;"&gt;&lt;STRONG&gt;D1&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;10&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;0&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;3&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl67" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;1&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;0&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;2&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;1&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl67" height="20" style="border-top: none;"&gt;&lt;STRONG&gt;C1&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;3&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;0&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;.&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;4&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;4&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl67" height="20" style="border-top: none;"&gt;&lt;STRONG&gt;C1&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;6&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;0&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;2&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;7&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;2&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;8&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;3&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;9&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;C1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;10&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;2&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl67" height="20" style="border-top: none;"&gt;&lt;STRONG&gt;E1&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;0&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;.&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl67" height="20" style="border-top: none;"&gt;&lt;STRONG&gt;E1&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;2&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;0&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;.&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;E1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;3&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;7&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl67" height="20" style="border-top: none;"&gt;E1&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;4&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;0&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;E1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;9&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;E1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;6&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;7&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;6&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl67" height="20" style="border-top: none;"&gt;&lt;STRONG&gt;E1&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;7&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;0&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;4&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;E1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;8&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl66" height="20" style="border-top: none;"&gt;E1&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;9&lt;/TD&gt;&lt;TD class="xl66" style="border-top: none; border-left: none;"&gt;7&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl67" height="20" style="border-top: none;"&gt;&lt;STRONG&gt;E1&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;10&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl67" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;0&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD class="xl70" style="border-top: none; border-left: none;"&gt;&lt;STRONG&gt;3&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 18 Dec 2014 02:22:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/how-to-calculate-a-rolling-average/m-p/155311#M2716</guid>
      <dc:creator>brenda023</dc:creator>
      <dc:date>2014-12-18T02:22:45Z</dc:date>
    </item>
    <item>
      <title>Re: how to calculate a rolling average</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/how-to-calculate-a-rolling-average/m-p/155312#M2717</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;First you'll need to create a time series with no missing values and then you can use either a data step with the lag function if it's only four time periods or you could use proc expand. Both methods are illustrated below:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #011993;"&gt;&lt;STRONG&gt;data&lt;/STRONG&gt;&lt;/SPAN&gt; have;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #0433ff;"&gt;input&lt;/SPAN&gt; ID $ Week Count;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New'; color: #0433ff;"&gt;cards&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;D1 1 13&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;D1 2 11&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;D1 3 9&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;D1 4 8&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;D1 5 10&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;D1 6 9&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;D1 7 5&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;D1 8 7&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;C1 2 1&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;C1 4 4&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;C1 5 5&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;C1 7 2&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;C1 8 3&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;C1 9 5&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;C1 10 2&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;E1 3 7&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;E1 5 9&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;E1 6 7&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;E1 8 5&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;E1 9 7&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New'; color: #011993;"&gt;&lt;STRONG&gt;run&lt;/STRONG&gt;&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #011993;"&gt;&lt;STRONG&gt;data&lt;/STRONG&gt;&lt;/SPAN&gt; weeks;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #0433ff;"&gt;do&lt;/SPAN&gt; week=&lt;SPAN style="color: #009193;"&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN style="color: #0433ff;"&gt;to&lt;/SPAN&gt; &lt;SPAN style="color: #009193;"&gt;&lt;STRONG&gt;10&lt;/STRONG&gt;&lt;/SPAN&gt;;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New'; color: #0433ff;"&gt;output&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New'; color: #0433ff;"&gt;end&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New'; color: #011993;"&gt;&lt;STRONG&gt;run&lt;/STRONG&gt;&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New'; color: #011993;"&gt;&lt;STRONG&gt;proc&lt;/STRONG&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;STRONG&gt;sql&lt;/STRONG&gt;&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New'; color: #0433ff;"&gt;create&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;table&lt;SPAN style="color: #000000;"&gt; step1 &lt;/SPAN&gt;as&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #0433ff;"&gt;select&lt;/SPAN&gt; t1.id, t1.week, coalesce(t2.count, &lt;SPAN style="color: #009193;"&gt;&lt;STRONG&gt;0&lt;/STRONG&gt;&lt;/SPAN&gt;) &lt;SPAN style="color: #0433ff;"&gt;as&lt;/SPAN&gt; count&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New'; color: #0433ff;"&gt;from&lt;SPAN style="color: #000000;"&gt; (&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #0433ff;"&gt;select&lt;/SPAN&gt; &lt;SPAN style="color: #0433ff;"&gt;distinct&lt;/SPAN&gt; a.id, b.week&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #0433ff;"&gt;from&lt;/SPAN&gt; have &lt;SPAN style="color: #0433ff;"&gt;as&lt;/SPAN&gt; a&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;cross &lt;SPAN style="color: #0433ff;"&gt;join&lt;/SPAN&gt; weeks &lt;SPAN style="color: #0433ff;"&gt;as&lt;/SPAN&gt; b) &lt;SPAN style="color: #0433ff;"&gt;as&lt;/SPAN&gt; t1&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #0433ff;"&gt;left&lt;/SPAN&gt; &lt;SPAN style="color: #0433ff;"&gt;join&lt;/SPAN&gt; have &lt;SPAN style="color: #0433ff;"&gt;as&lt;/SPAN&gt; t2&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #0433ff;"&gt;on&lt;/SPAN&gt; t1.id=t2.id &lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #0433ff;"&gt;and&lt;/SPAN&gt; t1.week=t2.week&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #0433ff;"&gt;order&lt;/SPAN&gt; &lt;SPAN style="color: #0433ff;"&gt;by&lt;/SPAN&gt; t1.id, t1.week;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New'; color: #011993;"&gt;&lt;STRONG&gt;quit&lt;/STRONG&gt;&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #011993;"&gt;&lt;STRONG&gt;data&lt;/STRONG&gt;&lt;/SPAN&gt; want1;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&amp;nbsp; &lt;SPAN style="color: #0433ff;"&gt;set&lt;/SPAN&gt; step1;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&amp;nbsp; &lt;SPAN style="color: #0433ff;"&gt;by&lt;/SPAN&gt; id;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&amp;nbsp; &lt;SPAN style="color: #0433ff;"&gt;if&lt;/SPAN&gt; first.id &lt;SPAN style="color: #0433ff;"&gt;then&lt;/SPAN&gt; n_count=&lt;SPAN style="color: #009193;"&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;/SPAN&gt;;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&amp;nbsp; &lt;SPAN style="color: #0433ff;"&gt;else&lt;/SPAN&gt; n_count+&lt;SPAN style="color: #009193;"&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;/SPAN&gt;;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&amp;nbsp; lag1=lag1(count);&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&amp;nbsp; lag2=lag2(count);&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&amp;nbsp; lag3=lag3(count);&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&amp;nbsp; &lt;SPAN style="color: #0433ff;"&gt;if&lt;/SPAN&gt; n_count&amp;gt;=&lt;SPAN style="color: #009193;"&gt;&lt;STRONG&gt;4&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN style="color: #0433ff;"&gt;then&lt;/SPAN&gt; rolling_avg=(count+lag1+lag2+lag3)/&lt;SPAN style="color: #009193;"&gt;&lt;STRONG&gt;4&lt;/STRONG&gt;&lt;/SPAN&gt;;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&amp;nbsp; &lt;SPAN style="color: #0433ff;"&gt;else&lt;/SPAN&gt; rolling_avg=&lt;SPAN style="color: #009193;"&gt;&lt;STRONG&gt;.&lt;/STRONG&gt;&lt;/SPAN&gt;;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&amp;nbsp; &lt;SPAN style="color: #0433ff;"&gt;drop&lt;/SPAN&gt; lag:;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New'; color: #011993;"&gt;&lt;STRONG&gt;run&lt;/STRONG&gt;&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #011993;"&gt;&lt;STRONG&gt;proc&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN style="color: #011993;"&gt;&lt;STRONG&gt;expand&lt;/STRONG&gt;&lt;/SPAN&gt; data=step1 out=want2;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #0433ff;"&gt;by&lt;/SPAN&gt; id;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #0433ff;"&gt;id&lt;/SPAN&gt; week;&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New';"&gt;&lt;SPAN style="color: #ff2600;"&gt;convert&lt;/SPAN&gt; count=rolling_avg4 / transformout=(movave &lt;SPAN style="color: #009193;"&gt;&lt;STRONG&gt;4&lt;/STRONG&gt;&lt;/SPAN&gt; trimleft &lt;SPAN style="color: #009193;"&gt;&lt;STRONG&gt;3&lt;/STRONG&gt;&lt;/SPAN&gt;);&lt;/P&gt;&lt;P style="font-size: 10px; font-family: 'Courier New'; color: #011993;"&gt;&lt;STRONG&gt;run&lt;/STRONG&gt;&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 18 Dec 2014 03:33:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/how-to-calculate-a-rolling-average/m-p/155312#M2717</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2014-12-18T03:33:40Z</dc:date>
    </item>
    <item>
      <title>Re: how to calculate a rolling average</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/how-to-calculate-a-rolling-average/m-p/155313#M2718</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;data base;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;do id = 'D1','C1','E1';&lt;/P&gt;&lt;P&gt;do week=1 to 10;&lt;/P&gt;&lt;P&gt;output;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;proc sql;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;create table want as&lt;/P&gt;&lt;P&gt;select b.id,b.week,coalesce(a.count,0) as count&lt;/P&gt;&lt;P&gt;from base b left join have a&lt;/P&gt;&lt;P&gt;on b.id=a.id&lt;/P&gt;&lt;P&gt;and b.week=a.week;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;data final;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;set want;&lt;/P&gt;&lt;P&gt;by id;&lt;/P&gt;&lt;P&gt;four_week_moving_avg=(count+lag(count)+lag2(count)+lag3(count))/4;&lt;/P&gt;&lt;P&gt;format four_week_moving_avg 3.0;&lt;/P&gt;&lt;P&gt;if week &amp;lt; 4 then four_week_moving_avg=.; &lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;proc print data=final;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;run; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 18 Dec 2014 04:35:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/how-to-calculate-a-rolling-average/m-p/155313#M2718</guid>
      <dc:creator>stat_sas</dc:creator>
      <dc:date>2014-12-18T04:35:13Z</dc:date>
    </item>
    <item>
      <title>Re: how to calculate a rolling average</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/how-to-calculate-a-rolling-average/m-p/155314#M2719</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;data have;
input ID $ Week Count;
cards;
D1 1 13
D1 2 11
D1 3 9
D1 4 8
D1 5 10
D1 6 9
D1 7 5
D1 8 7
C1 2 1
C1 4 4
C1 5 5
C1 7 2
C1 8 3
C1 9 5
C1 10 2
E1 3 7
E1 5 9
E1 6 7
E1 8 5
E1 9 7
;
run;

proc sql;
create table want as
select x.*,case when week lt 4 then .
&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; else (select sum(count)/4 from have where id=x.id and week between x.week-3 and x.week)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end as average
from (
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select t1.id, t1.week, coalesce(t2.count, 0) as count
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from ( select * from (select distinct id from have),(select distinct week from have) ) as t1
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; left join have as t2 on t1.id=t2.id and t1.week=t2.week 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ) as x;
quit;

&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Xia Keshan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 18 Dec 2014 12:28:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/how-to-calculate-a-rolling-average/m-p/155314#M2719</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2014-12-18T12:28:59Z</dc:date>
    </item>
  </channel>
</rss>

