<?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 Average of last x entries in each column of a triangle in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/Average-of-last-x-entries-in-each-column-of-a-triangle/m-p/217089#M53417</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;TABLE border="1" class="jiveBorder" height="222" style="border: 1px solid rgb(0, 0, 0); width: 351px; height: 223px;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;Period&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;2&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;3&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;4&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;5&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;6&lt;/STRONG&gt;&lt;/TH&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;201401&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;22223&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;30303&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;40000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;80000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;123444&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;144000&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;201402&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;22334&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;40002&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;100202&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;120000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;132000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;201403&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;129934&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;150000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;123444&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;130000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;201404&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;54349&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;75000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;123444&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;201501&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;99900&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;134423&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;201502&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;102030&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&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;I have created triangles of data in SAS. When I say triangles, the cells off the triangle are left blank. The actual triangle is much bigger than this one and I'm trying to write the code to sum over the bottom nonblank cells of each column. I'm not sure if this is possible but I would think it would involve proc summary.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Are there any functions that can achieve this?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 05 Aug 2015 09:35:59 GMT</pubDate>
    <dc:creator>brophymj</dc:creator>
    <dc:date>2015-08-05T09:35:59Z</dc:date>
    <item>
      <title>Average of last x entries in each column of a triangle</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Average-of-last-x-entries-in-each-column-of-a-triangle/m-p/217089#M53417</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;TABLE border="1" class="jiveBorder" height="222" style="border: 1px solid rgb(0, 0, 0); width: 351px; height: 223px;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;Period&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;2&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;3&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;4&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;5&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;6&lt;/STRONG&gt;&lt;/TH&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;...&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;201401&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;22223&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;30303&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;40000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;80000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;123444&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;144000&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;201402&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;22334&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;40002&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;100202&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;120000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;132000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;201403&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;129934&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;150000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;123444&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;130000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;201404&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;54349&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;75000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;123444&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;201501&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;99900&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;134423&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;201502&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;102030&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;.&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;I have created triangles of data in SAS. When I say triangles, the cells off the triangle are left blank. The actual triangle is much bigger than this one and I'm trying to write the code to sum over the bottom nonblank cells of each column. I'm not sure if this is possible but I would think it would involve proc summary.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Are there any functions that can achieve this?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Aug 2015 09:35:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Average-of-last-x-entries-in-each-column-of-a-triangle/m-p/217089#M53417</guid>
      <dc:creator>brophymj</dc:creator>
      <dc:date>2015-08-05T09:35:59Z</dc:date>
    </item>
    <item>
      <title>Re: Average of last x entries in each column of a triangle</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Average-of-last-x-entries-in-each-column-of-a-triangle/m-p/217090#M53418</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;You could use arrays:&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; array var{6};&amp;nbsp; /* I assume your variables are prefixed with var */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do i=1 to 6;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if var{i}=. then do;&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;&amp;nbsp; do j=i-1 to 1 by -1;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; result=sum(result,var{j});&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;&amp;nbsp; end;&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;&amp;nbsp; leave;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So the above looks for the last record (i.e. the first .), then takes the previous numbers and sums them up.&amp;nbsp; You could do mean of certain, e.g. change the to 1 to 3, and mean is just sum / i-1.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Aug 2015 10:39:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Average-of-last-x-entries-in-each-column-of-a-triangle/m-p/217090#M53418</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2015-08-05T10:39:01Z</dc:date>
    </item>
    <item>
      <title>Re: Average of last x entries in each column of a triangle</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Average-of-last-x-entries-in-each-column-of-a-triangle/m-p/217091#M53419</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I don't understand what you want.&amp;nbsp; For the data you show what values are summed?&amp;nbsp;&amp;nbsp; You imply there is more than one upper triangular matrix, if so show example and if there is variable to differentiate.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The way I read your explanation you want&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: #0000ff; background-color: #ffffff;"&gt;_null_&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;x&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; = sum(&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;144000&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;132000&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;130000&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;123444&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;134423&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;,&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;102030&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;put&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; x=;&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;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;x&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;=&lt;/SPAN&gt;&lt;STRONG style="color: #008080; background-color: #ffffff;"&gt;765897&lt;/STRONG&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Aug 2015 11:14:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Average-of-last-x-entries-in-each-column-of-a-triangle/m-p/217091#M53419</guid>
      <dc:creator>data_null__</dc:creator>
      <dc:date>2015-08-05T11:14:56Z</dc:date>
    </item>
    <item>
      <title>Re: Average of last x entries in each column of a triangle</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Average-of-last-x-entries-in-each-column-of-a-triangle/m-p/217092#M53420</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks RW9&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That works when summing the last 6 cells on a row but I wanted to get the average of the last 8 nonzero cells on each column. The length of the triangle is 36*36 so I want to take the average of the last 8.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Using the above example (and assuming I only want the average of the last 2 non-zero cells I would want&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;(102030+99900)/2 = 100965&lt;/P&gt;&lt;P&gt;(134423+75000)/2 = 104711.5&lt;/P&gt;&lt;P&gt;(123444+123444)/2 = 123444 &lt;/P&gt;&lt;P&gt;(130000+120000)/2 = 125000&lt;/P&gt;&lt;P&gt;(132000+123444)/2 = 127722&lt;/P&gt;&lt;P&gt;144000 (where there are less than the number we want to get to average over it just gets the average of what's there|).&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Aug 2015 11:31:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Average-of-last-x-entries-in-each-column-of-a-triangle/m-p/217092#M53420</guid>
      <dc:creator>brophymj</dc:creator>
      <dc:date>2015-08-05T11:31:52Z</dc:date>
    </item>
    <item>
      <title>Re: Average of last x entries in each column of a triangle</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Average-of-last-x-entries-in-each-column-of-a-triangle/m-p/217093#M53421</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Seems like a job for STAT functions more that array loops to me.&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; tri;&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;infile&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;cards4&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;dsd&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;missover&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;input&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; period:&lt;/SPAN&gt;&lt;SPAN style="color: #008080; background-color: #ffffff;"&gt;yymmn.&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; var1-var6;&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; period &lt;/SPAN&gt;&lt;SPAN style="color: #008080; background-color: #ffffff;"&gt;yymmn.&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;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;201401,22223,30303,40000,80000,123444,144000&lt;BR /&gt;201402,22334,40002,100202,120000,132000,.&lt;BR /&gt;201403,129934,150000,123444,130000,.,.&lt;BR /&gt;201404,54349,75000,123444,.,.,.&lt;BR /&gt;201501,99900,134423,.,.,.,.&lt;BR /&gt;201502,102030,.,.,.,.,.&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;print&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;STRONG style="color: #000080; background-color: #ffffff;"&gt;data&lt;/STRONG&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; trisum;&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; tri;&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;array&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; v&lt;LI&gt; var:;&lt;BR /&gt;&lt;/LI&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; n = n(of v&lt;LI&gt;);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/LI&gt;&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; n lt dim(v) &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; x = sum(of v&lt;LI&gt;);&lt;BR /&gt;&lt;/LI&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;print&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;/SPAN&gt;&lt;/DIV&gt;&lt;DIV style="font-family: Courier New; font-size: 11pt;"&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV style="font-family: Courier New; font-size: 11pt;"&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;IMG alt="Capture.PNG" class="jive-image-thumbnail jive-image" src="https://communities.sas.com/legacyfs/online/11315_Capture.PNG" width="450" /&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Aug 2015 11:33:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Average-of-last-x-entries-in-each-column-of-a-triangle/m-p/217093#M53421</guid>
      <dc:creator>data_null__</dc:creator>
      <dc:date>2015-08-05T11:33:39Z</dc:date>
    </item>
    <item>
      <title>Re: Average of last x entries in each column of a triangle</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Average-of-last-x-entries-in-each-column-of-a-triangle/m-p/217094#M53422</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I ended up using this but it's a bit messy...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data average; &lt;BR /&gt;input key $4.;&lt;BR /&gt;datalines;&lt;BR /&gt;mean&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;%macro average;&lt;/P&gt;&lt;P&gt;%do j = 0 %to 36;&lt;/P&gt;&lt;P&gt;data test&amp;amp;j;&lt;BR /&gt;set test;&lt;BR /&gt;if qtr&amp;amp;j = . then delete;&lt;BR /&gt;key = "mean";&lt;BR /&gt;keep key qtr&amp;amp;j;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;data test&amp;amp;j;&lt;BR /&gt;set test&amp;amp;j(obs=10);&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;proc summary data = test&amp;amp;j nway missing;&lt;BR /&gt;class key;&lt;BR /&gt;var&amp;nbsp; qtr&amp;amp;j;&lt;BR /&gt;output out = test&amp;amp;j(drop = _freq_ _type_) mean=;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;data average;&lt;BR /&gt;merge average test&amp;amp;j;&lt;BR /&gt;by key;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;%end;&lt;BR /&gt;%mend;&lt;/P&gt;&lt;P&gt;%average;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Aug 2015 13:41:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Average-of-last-x-entries-in-each-column-of-a-triangle/m-p/217094#M53422</guid>
      <dc:creator>brophymj</dc:creator>
      <dc:date>2015-08-05T13:41:47Z</dc:date>
    </item>
  </channel>
</rss>

