<?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 Find non missing value from set of treatments in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Find-non-missing-value-from-set-of-treatments/m-p/404731#M98375</link>
    <description>&lt;P&gt;Hi There,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am having set of variables (trt01 - trt07) having character values , i need to find maximum non missing treatment from 7 treatments group.i need to use that last 2 digit number in a macro variable.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; trt01&amp;nbsp; &amp;nbsp;trt02&amp;nbsp; &amp;nbsp;trt03&amp;nbsp; &amp;nbsp;trt04&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; abc&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;def&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-----------&amp;gt;&amp;nbsp; &amp;nbsp;trt03&lt;/P&gt;&lt;P&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; abc&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;gt;&amp;nbsp; &amp;nbsp;trt01&lt;/P&gt;&lt;P&gt;3&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;abc&amp;nbsp; &amp;nbsp; def&amp;nbsp; &amp;nbsp; &amp;nbsp; ght&amp;nbsp; &amp;nbsp; dsa&amp;nbsp; &amp;nbsp; &amp;nbsp; ------------&amp;gt;&amp;nbsp; &amp;nbsp;trt04&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;instead of writing group of if then else statement any other dynamic way to find treatment ,any one help me please.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data d2;
set d1
array trt(7)  $12.;
array trt_n(7);

do i = 1 to dim(trt);
trt_n(i)= ^missing(trt(i));
x = max(reverse(substr(cmtrt_atcn(i),1,2)));&lt;BR /&gt;L_trt = trt||x;
end;
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 17 Oct 2017 10:39:33 GMT</pubDate>
    <dc:creator>vikram_e</dc:creator>
    <dc:date>2017-10-17T10:39:33Z</dc:date>
    <item>
      <title>Find non missing value from set of treatments</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Find-non-missing-value-from-set-of-treatments/m-p/404730#M98373</link>
      <description>&lt;P&gt;Hi There,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am having set of variables (trt01 - trt07) having character values , i need to find maximum non missing treatment from 7 treatments group.i need to use that last 2 digit number in a macro variable.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; trt01&amp;nbsp; &amp;nbsp;trt02&amp;nbsp; &amp;nbsp;trt03&amp;nbsp; &amp;nbsp;trt04&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; abc&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;def&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-----------&amp;gt;&amp;nbsp; &amp;nbsp;trt03&lt;/P&gt;&lt;P&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; abc&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;gt;&amp;nbsp; &amp;nbsp;trt01&lt;/P&gt;&lt;P&gt;3&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;abc&amp;nbsp; &amp;nbsp; def&amp;nbsp; &amp;nbsp; &amp;nbsp; ght&amp;nbsp; &amp;nbsp; dsa&amp;nbsp; &amp;nbsp; &amp;nbsp; ------------&amp;gt;&amp;nbsp; &amp;nbsp;trt04&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;any one help me please.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 17 Oct 2017 10:18:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Find-non-missing-value-from-set-of-treatments/m-p/404730#M98373</guid>
      <dc:creator>vikram_e</dc:creator>
      <dc:date>2017-10-17T10:18:19Z</dc:date>
    </item>
    <item>
      <title>Find non missing value from set of treatments</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Find-non-missing-value-from-set-of-treatments/m-p/404731#M98375</link>
      <description>&lt;P&gt;Hi There,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am having set of variables (trt01 - trt07) having character values , i need to find maximum non missing treatment from 7 treatments group.i need to use that last 2 digit number in a macro variable.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; trt01&amp;nbsp; &amp;nbsp;trt02&amp;nbsp; &amp;nbsp;trt03&amp;nbsp; &amp;nbsp;trt04&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; abc&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;def&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-----------&amp;gt;&amp;nbsp; &amp;nbsp;trt03&lt;/P&gt;&lt;P&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; abc&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;gt;&amp;nbsp; &amp;nbsp;trt01&lt;/P&gt;&lt;P&gt;3&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;abc&amp;nbsp; &amp;nbsp; def&amp;nbsp; &amp;nbsp; &amp;nbsp; ght&amp;nbsp; &amp;nbsp; dsa&amp;nbsp; &amp;nbsp; &amp;nbsp; ------------&amp;gt;&amp;nbsp; &amp;nbsp;trt04&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;instead of writing group of if then else statement any other dynamic way to find treatment ,any one help me please.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data d2;
set d1
array trt(7)  $12.;
array trt_n(7);

do i = 1 to dim(trt);
trt_n(i)= ^missing(trt(i));
x = max(reverse(substr(cmtrt_atcn(i),1,2)));&lt;BR /&gt;L_trt = trt||x;
end;
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 17 Oct 2017 10:39:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Find-non-missing-value-from-set-of-treatments/m-p/404731#M98375</guid>
      <dc:creator>vikram_e</dc:creator>
      <dc:date>2017-10-17T10:39:33Z</dc:date>
    </item>
    <item>
      <title>Re: Find non missing value from set of treatments</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Find-non-missing-value-from-set-of-treatments/m-p/404751#M98377</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/55995"&gt;@vikram_e&lt;/a&gt; wrote:&lt;BR /&gt;&lt;P&gt;Hi There,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am having set of variables (trt01 - trt07) having character values , i need to find maximum non missing treatment from 7 treatments group&lt;STRONG&gt;.i need to use that last 2 digit number in a macro variable.&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; trt01&amp;nbsp; &amp;nbsp;trt02&amp;nbsp; &amp;nbsp;trt03&amp;nbsp; &amp;nbsp;trt04&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; abc&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;def&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-----------&amp;gt;&amp;nbsp; &amp;nbsp;trt03&lt;/P&gt;&lt;P&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; abc&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;gt;&amp;nbsp; &amp;nbsp;trt01&lt;/P&gt;&lt;P&gt;3&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;abc&amp;nbsp; &amp;nbsp; def&amp;nbsp; &amp;nbsp; &amp;nbsp; ght&amp;nbsp; &amp;nbsp; dsa&amp;nbsp; &amp;nbsp; &amp;nbsp; ------------&amp;gt;&amp;nbsp; &amp;nbsp;trt04&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;any one help me please.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Can you explain what should be stored in the macro-variable after all obs have been processed?&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;To find the last treatment use an array and a loop with decreasing index variable.Something like (&lt;STRONG&gt;untested code&lt;/STRONG&gt;&lt;span class="lia-unicode-emoji" title=":disappointed_face:"&gt;😞&lt;/span&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;array t trt01-trt04;

do i = dim(t) to 1 by -1;
  if not missing(t[i]) then do;
    max = vname(t[i]);
    leave;
  end;
end;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 17 Oct 2017 11:39:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Find-non-missing-value-from-set-of-treatments/m-p/404751#M98377</guid>
      <dc:creator>error_prone</dc:creator>
      <dc:date>2017-10-17T11:39:06Z</dc:date>
    </item>
    <item>
      <title>Re: Find non missing value from set of treatments</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Find-non-missing-value-from-set-of-treatments/m-p/404786#M98391</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data x;
   infile cards missover;
   input id (trt01-trt07) ($);
cards;
1   abc   .  def               
2   abc                        
3   abc    def      ght    dsa 
;;;;
   run;
data x2;
   set x;
   array _trt[*] trt07-trt01;
   i  = whichC(coalesceC(of _trt[*]),of _trt[*]);
   maxtrt = vname(_trt[i]);
   drop i;
   run;
proc print;
   run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="2017-10-17_8-14-25.png" style="width: 361px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/15937i591CA4D72B5AD2A8/image-size/large?v=v2&amp;amp;px=999" role="button" title="2017-10-17_8-14-25.png" alt="2017-10-17_8-14-25.png" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 17 Oct 2017 13:17:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Find-non-missing-value-from-set-of-treatments/m-p/404786#M98391</guid>
      <dc:creator>data_null__</dc:creator>
      <dc:date>2017-10-17T13:17:19Z</dc:date>
    </item>
  </channel>
</rss>

