<?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 do I modify proc summary output to create a table in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-modify-proc-summary-output-to-create-a-table/m-p/467474#M119327</link>
    <description>&lt;P&gt;PROC EXPAND (if you have it in your SAS license) can provide 3 year moving averages of your data.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Since your output is vertical but the table you want is horizontal, you could transpose your output, then use ARRAYs in a data step to get three year moving averages.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;But just a word to the wise ... keep your final table vertical, not horizontal, it's a much easier format for SAS to work with, and much easier for people to read.&lt;/P&gt;</description>
    <pubDate>Mon, 04 Jun 2018 17:09:02 GMT</pubDate>
    <dc:creator>PaigeMiller</dc:creator>
    <dc:date>2018-06-04T17:09:02Z</dc:date>
    <item>
      <title>How do I modify proc summary output to create a table</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-modify-proc-summary-output-to-create-a-table/m-p/467472#M119326</link>
      <description>&lt;P&gt;Good morning,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am trying to create 3 year moving average rates from a large birth file. I have used proc summary to get the data into a format to create the rates by&amp;nbsp;year&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc summary data=ptm_denom;
  class year;
  var preterm birth;
  output out=ptmtab sum=preterm birth;
  run;
  proc print data=ptmtab;
  run;
  data ptm_rate (drop = _type_ _freq_);
  set ptmtab;
  ptmrate = (preterm/birth)*100;
  run;
proc print data=ptm_rate noobs;
var year preterm birth ptmrate;
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And my output looks like this:&lt;/P&gt;&lt;P&gt;year preterm birth ptmrate&lt;/P&gt;&lt;TABLE cellspacing="0" cellpadding="5"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;TD&gt;3986&lt;/TD&gt;&lt;TD&gt;52025&lt;/TD&gt;&lt;TD&gt;7.66170&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2007&lt;/TD&gt;&lt;TD&gt;439&lt;/TD&gt;&lt;TD&gt;5549&lt;/TD&gt;&lt;TD&gt;7.91134&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2008&lt;/TD&gt;&lt;TD&gt;453&lt;/TD&gt;&lt;TD&gt;5627&lt;/TD&gt;&lt;TD&gt;8.05047&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2009&lt;/TD&gt;&lt;TD&gt;453&lt;/TD&gt;&lt;TD&gt;5517&lt;/TD&gt;&lt;TD&gt;8.21098&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2010&lt;/TD&gt;&lt;TD&gt;453&lt;/TD&gt;&lt;TD&gt;5298&lt;/TD&gt;&lt;TD&gt;8.55040&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2011&lt;/TD&gt;&lt;TD&gt;394&lt;/TD&gt;&lt;TD&gt;5082&lt;/TD&gt;&lt;TD&gt;7.75285&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2012&lt;/TD&gt;&lt;TD&gt;363&lt;/TD&gt;&lt;TD&gt;5069&lt;/TD&gt;&lt;TD&gt;7.16118&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2013&lt;/TD&gt;&lt;TD&gt;368&lt;/TD&gt;&lt;TD&gt;4946&lt;/TD&gt;&lt;TD&gt;7.44036&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2014&lt;/TD&gt;&lt;TD&gt;374&lt;/TD&gt;&lt;TD&gt;5031&lt;/TD&gt;&lt;TD&gt;7.43391&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2015&lt;/TD&gt;&lt;TD&gt;328&lt;/TD&gt;&lt;TD&gt;4977&lt;/TD&gt;&lt;TD&gt;6.59032&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2016&lt;/TD&gt;&lt;TD&gt;361&lt;/TD&gt;&lt;TD&gt;4929&lt;/TD&gt;&lt;TD&gt;7.32400&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;but I can't figure out how to sum and average the data and manipulate the table so my output looks like this:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;2007-2009&lt;/TD&gt;&lt;TD&gt;2008-2010&lt;/TD&gt;&lt;TD&gt;2009-2011&lt;/TD&gt;&lt;TD&gt;2010-2012&lt;/TD&gt;&lt;TD&gt;2011-2013&lt;/TD&gt;&lt;TD&gt;2012-2014&lt;/TD&gt;&lt;TD&gt;2013-2015&lt;/TD&gt;&lt;TD&gt;2014-2016&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;preterm&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;birth&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ptmrate&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This seems like&amp;nbsp;there would be an easy solution, but I can't figure one out. Any help would be great!&lt;/P&gt;</description>
      <pubDate>Mon, 04 Jun 2018 17:06:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-modify-proc-summary-output-to-create-a-table/m-p/467472#M119326</guid>
      <dc:creator>JenMMerc</dc:creator>
      <dc:date>2018-06-04T17:06:04Z</dc:date>
    </item>
    <item>
      <title>Re: How do I modify proc summary output to create a table</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-modify-proc-summary-output-to-create-a-table/m-p/467474#M119327</link>
      <description>&lt;P&gt;PROC EXPAND (if you have it in your SAS license) can provide 3 year moving averages of your data.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Since your output is vertical but the table you want is horizontal, you could transpose your output, then use ARRAYs in a data step to get three year moving averages.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;But just a word to the wise ... keep your final table vertical, not horizontal, it's a much easier format for SAS to work with, and much easier for people to read.&lt;/P&gt;</description>
      <pubDate>Mon, 04 Jun 2018 17:09:02 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-modify-proc-summary-output-to-create-a-table/m-p/467474#M119327</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2018-06-04T17:09:02Z</dc:date>
    </item>
  </channel>
</rss>

