<?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 use macro to run/test multiple models? in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/how-to-use-macro-to-run-test-multiple-models/m-p/339744#M272622</link>
    <description>&lt;P&gt;Try next code:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;%macro run_model(modl , vars=v1 v2 v3 v4 ... &amp;nbsp;); &amp;nbsp;/* define as many as need variables */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; %let n = %sysfunc(countw(&amp;amp;vars));&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; %do i=1 %to &amp;amp;n;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; %let pos=%sysfunc(findw(&amp;amp;vars, %scan(&amp;amp;vars,&amp;amp;n)));&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; %let len = %eval(&amp;amp;pos + %length(%scan(&amp;amp;vars,&amp;amp;n));&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token procnames"&gt;PROC&lt;/SPAN&gt; &lt;SPAN class="token procnames"&gt;MIXED&lt;/SPAN&gt; &lt;SPAN class="token procnames"&gt;data&lt;/SPAN&gt;&lt;SPAN class="token operator"&gt;=&amp;amp;&lt;/SPAN&gt;&lt;SPAN class="token procnames"&gt;modl&lt;/SPAN&gt; METHOD&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;ML COVTEST&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token statement"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;CLASS&lt;/SPAN&gt; &lt;SPAN class="token keyword"&gt;group&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token procnames"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;MODEL&lt;/SPAN&gt; &lt;SPAN class="token procnames"&gt;score&lt;/SPAN&gt; &lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt; %substr(&amp;amp;vars,1,&amp;amp;len)&lt;SPAN class="token operator"&gt;/&lt;/SPAN&gt;SOLUTION&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE class="  language-sas"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; RANDOM INTERCEPT &lt;SPAN class="token operator"&gt;/&lt;/SPAN&gt;SUB&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;&lt;SPAN class="token keyword"&gt;ID&lt;/SPAN&gt; TYPE&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;UN G&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token procnames"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; run&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;%end;&lt;/P&gt;
&lt;P&gt;%mend run_model;&lt;/P&gt;
&lt;P&gt;%run_model(model,vars=var1 var2 var3);&lt;/P&gt;</description>
    <pubDate>Thu, 09 Mar 2017 19:09:11 GMT</pubDate>
    <dc:creator>Shmuel</dc:creator>
    <dc:date>2017-03-09T19:09:11Z</dc:date>
    <item>
      <title>how to use macro to run/test multiple models?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/how-to-use-macro-to-run-test-multiple-models/m-p/339741#M272621</link>
      <description>&lt;P&gt;I'm looking for a way using macros to deal with a&amp;nbsp;bunch of mixed models...the task is very similar to selection in linear regression:&lt;/P&gt;&lt;P&gt;the first model is:&lt;STRONG&gt; score = var1&lt;/STRONG&gt;,&lt;/P&gt;&lt;P&gt;code is like that&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;PROC MIXED data=model METHOD=ML COVTEST;
  CLASS group;
  MODEL score = var1/SOLUTION;
  RANDOM INTERCEPT /SUB=ID TYPE=UN G;
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;then it's &lt;STRONG&gt;score = var1 var2,&lt;/STRONG&gt;&amp;nbsp;then &lt;STRONG&gt;score = var1 var2 var3&lt;/STRONG&gt;... I have up to 7&amp;nbsp;variables in all, and the criteria is log rank test.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 09 Mar 2017 18:54:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/how-to-use-macro-to-run-test-multiple-models/m-p/339741#M272621</guid>
      <dc:creator>joseph626</dc:creator>
      <dc:date>2017-03-09T18:54:12Z</dc:date>
    </item>
    <item>
      <title>Re: how to use macro to run/test multiple models?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/how-to-use-macro-to-run-test-multiple-models/m-p/339744#M272622</link>
      <description>&lt;P&gt;Try next code:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;%macro run_model(modl , vars=v1 v2 v3 v4 ... &amp;nbsp;); &amp;nbsp;/* define as many as need variables */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; %let n = %sysfunc(countw(&amp;amp;vars));&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; %do i=1 %to &amp;amp;n;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; %let pos=%sysfunc(findw(&amp;amp;vars, %scan(&amp;amp;vars,&amp;amp;n)));&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; %let len = %eval(&amp;amp;pos + %length(%scan(&amp;amp;vars,&amp;amp;n));&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token procnames"&gt;PROC&lt;/SPAN&gt; &lt;SPAN class="token procnames"&gt;MIXED&lt;/SPAN&gt; &lt;SPAN class="token procnames"&gt;data&lt;/SPAN&gt;&lt;SPAN class="token operator"&gt;=&amp;amp;&lt;/SPAN&gt;&lt;SPAN class="token procnames"&gt;modl&lt;/SPAN&gt; METHOD&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;ML COVTEST&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token statement"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;CLASS&lt;/SPAN&gt; &lt;SPAN class="token keyword"&gt;group&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token procnames"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;MODEL&lt;/SPAN&gt; &lt;SPAN class="token procnames"&gt;score&lt;/SPAN&gt; &lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt; %substr(&amp;amp;vars,1,&amp;amp;len)&lt;SPAN class="token operator"&gt;/&lt;/SPAN&gt;SOLUTION&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE class="  language-sas"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; RANDOM INTERCEPT &lt;SPAN class="token operator"&gt;/&lt;/SPAN&gt;SUB&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;&lt;SPAN class="token keyword"&gt;ID&lt;/SPAN&gt; TYPE&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;UN G&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token procnames"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; run&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;%end;&lt;/P&gt;
&lt;P&gt;%mend run_model;&lt;/P&gt;
&lt;P&gt;%run_model(model,vars=var1 var2 var3);&lt;/P&gt;</description>
      <pubDate>Thu, 09 Mar 2017 19:09:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/how-to-use-macro-to-run-test-multiple-models/m-p/339744#M272622</guid>
      <dc:creator>Shmuel</dc:creator>
      <dc:date>2017-03-09T19:09:11Z</dc:date>
    </item>
  </channel>
</rss>

