<?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: Proc summary in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/Proc-summary/m-p/165473#M42883</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;create date macros using data _null_ statement. Then use these variables in your code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data _null_;&lt;/P&gt;&lt;P&gt; call symput ('&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;endyear &lt;/SPAN&gt;', put(intnx('year',today(),-2),year4.); /*2012*/&lt;/P&gt;&lt;P&gt; call symput ('previous_yr1&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt; &lt;/SPAN&gt;', put(intnx('year',today(),-3),year4.);&lt;/P&gt;&lt;P&gt;call symput ('previous_yr2', put(intnx('year',today(),-4),year4.);&lt;/P&gt;&lt;P&gt;call symput ('previous_yr3', put(intnx('year',today(),-5),year4.);&lt;/P&gt;&lt;P&gt;call symput ('&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;startyear&lt;/SPAN&gt;', put(intnx('year',today(),-6),year4.);&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;%put &amp;amp;endyear &amp;amp;previous_yr1 &amp;amp;previous_yr2 &amp;amp;previous_yr3 &amp;amp;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;startyear&lt;/SPAN&gt; ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Proc summary data = test;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;class premium;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;var ep &amp;amp;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;startyear &lt;/SPAN&gt;ep &amp;amp;previous_yr3 ep &amp;amp;previous_yr2 ep &amp;amp;previous_yr1 ep &amp;amp;endyear ;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;output out = test1 sum =&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 18 Aug 2014 13:26:42 GMT</pubDate>
    <dc:creator>Vish33</dc:creator>
    <dc:date>2014-08-18T13:26:42Z</dc:date>
    <item>
      <title>Proc summary</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-summary/m-p/165471#M42881</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I use a proc summary to produce total premium figures for the last 5 years but I currently need to hard code the variables in as follows:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Proc summary data = test;&lt;/P&gt;&lt;P&gt;class premium;&lt;/P&gt;&lt;P&gt;var ep2008 ep 2009 ep 2010 ep 2011 ep 2012;&lt;/P&gt;&lt;P&gt;output out = test1 sum =&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there any way of making this more dynamic by having something like:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%let startyear = 2008;&lt;/P&gt;&lt;P&gt;%let endyear = 2012:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and build a macro within the proc summary with a loop or something&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Aug 2014 13:07:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-summary/m-p/165471#M42881</guid>
      <dc:creator>brophymj</dc:creator>
      <dc:date>2014-08-18T13:07:13Z</dc:date>
    </item>
    <item>
      <title>Re: Proc summary</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-summary/m-p/165472#M42882</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sure, should be straightforward (not tested either of these but should be close):&lt;/P&gt;&lt;P&gt;Macro:&lt;/P&gt;&lt;P&gt;%macro Summ (start=,end=);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Proc summary data = test;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; class premium;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %do I=&amp;amp;start. %to &amp;amp;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;&amp;nbsp; ep%trim(&amp;amp;I.)&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; output out = test1 sum =&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;%mend Summ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Generated:&lt;/P&gt;&lt;P&gt;data _null_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call execute('Proc summary data = test;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; class premium;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var ');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do I=2008 to 2012;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call execute('ep'||put(I,4.)||" ");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call execute('; output out = test1 sum =; run;');&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Aug 2014 13:13:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-summary/m-p/165472#M42882</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2014-08-18T13:13:38Z</dc:date>
    </item>
    <item>
      <title>Re: Proc summary</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-summary/m-p/165473#M42883</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;create date macros using data _null_ statement. Then use these variables in your code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data _null_;&lt;/P&gt;&lt;P&gt; call symput ('&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;endyear &lt;/SPAN&gt;', put(intnx('year',today(),-2),year4.); /*2012*/&lt;/P&gt;&lt;P&gt; call symput ('previous_yr1&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt; &lt;/SPAN&gt;', put(intnx('year',today(),-3),year4.);&lt;/P&gt;&lt;P&gt;call symput ('previous_yr2', put(intnx('year',today(),-4),year4.);&lt;/P&gt;&lt;P&gt;call symput ('previous_yr3', put(intnx('year',today(),-5),year4.);&lt;/P&gt;&lt;P&gt;call symput ('&lt;SPAN style="background-color: #ffffff; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;startyear&lt;/SPAN&gt;', put(intnx('year',today(),-6),year4.);&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;%put &amp;amp;endyear &amp;amp;previous_yr1 &amp;amp;previous_yr2 &amp;amp;previous_yr3 &amp;amp;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;startyear&lt;/SPAN&gt; ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Proc summary data = test;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;class premium;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;var ep &amp;amp;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;startyear &lt;/SPAN&gt;ep &amp;amp;previous_yr3 ep &amp;amp;previous_yr2 ep &amp;amp;previous_yr1 ep &amp;amp;endyear ;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;output out = test1 sum =&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Aug 2014 13:26:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-summary/m-p/165473#M42883</guid>
      <dc:creator>Vish33</dc:creator>
      <dc:date>2014-08-18T13:26:42Z</dc:date>
    </item>
    <item>
      <title>Re: Proc summary</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-summary/m-p/165474#M42884</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;There's no need to complicate a simple step by adding macro language.&amp;nbsp; Just use a variable list:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;var ep2008-ep2012;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;No further changes are needed.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Aug 2014 13:36:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-summary/m-p/165474#M42884</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2014-08-18T13:36:28Z</dc:date>
    </item>
    <item>
      <title>Re: Proc summary</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-summary/m-p/165475#M42885</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Or if you have no other variables that start with "ep" that you do not want in the analysis you can use&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;var ep: ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Then if you later add additional epyyyy variables they will be included automatically.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Aug 2014 15:33:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-summary/m-p/165475#M42885</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2014-08-18T15:33:10Z</dc:date>
    </item>
    <item>
      <title>Re: Proc summary</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Proc-summary/m-p/165476#M42886</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can create a macro that builds the names of the variables you plan to use within the var statement:&lt;/P&gt;&lt;P&gt;%macro a;&lt;/P&gt;&lt;P&gt;%Do y = 2008 %to 2013;&lt;/P&gt;&lt;P&gt;ep&amp;amp;y&lt;/P&gt;&lt;P&gt;%end;&lt;/P&gt;&lt;P&gt;%mend a;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Afterwards you can simply call the macro from inside proc means:&lt;/P&gt;&lt;P&gt;&lt;EM&gt;var %a;&lt;/EM&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Aug 2014 12:41:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Proc-summary/m-p/165476#M42886</guid>
      <dc:creator>Loko</dc:creator>
      <dc:date>2014-08-19T12:41:41Z</dc:date>
    </item>
  </channel>
</rss>

