<?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: Do loop question in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239873#M44193</link>
    <description>&lt;P&gt;Try it this way:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;if whichc('CURRENT', of time1-time12) then flag=1;&lt;/P&gt;
&lt;P&gt;else flag=0;&lt;/P&gt;</description>
    <pubDate>Thu, 17 Dec 2015 22:31:43 GMT</pubDate>
    <dc:creator>Astounding</dc:creator>
    <dc:date>2015-12-17T22:31:43Z</dc:date>
    <item>
      <title>Do loop question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239852#M44184</link>
      <description>&lt;P&gt;Hi SAS Forum,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Below code works well but could you please help me to convert this to a code saving do loop like thing.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;data&lt;/STRONG&gt; want;&lt;/P&gt;&lt;P&gt;set have;&lt;/P&gt;&lt;P&gt;If Time1 &amp;nbsp;&amp;nbsp; = 'CURRENT' or&lt;/P&gt;&lt;P&gt;Time2 = 'CURRENT' or&lt;/P&gt;&lt;P&gt;Time3 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 'CURRENT' or&lt;/P&gt;&lt;P&gt;Time4 &amp;nbsp;&amp;nbsp; = 'CURRENT'or&lt;/P&gt;&lt;P&gt;Time5 &amp;nbsp;&amp;nbsp; = 'CURRENT' or&lt;/P&gt;&lt;P&gt;Time6 = 'CURRENT' or&lt;/P&gt;&lt;P&gt;Time7 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 'CURRENT' or&lt;/P&gt;&lt;P&gt;Time8 &amp;nbsp;&amp;nbsp; = 'CURRENT' or&lt;/P&gt;&lt;P&gt;Time9 = 'CURRENT' or&lt;/P&gt;&lt;P&gt;Time10 = 'CURRENT' or&lt;/P&gt;&lt;P&gt;Time11 &amp;nbsp; = 'CURRENT' or&lt;/P&gt;&lt;P&gt;Time12 = 'CURRENT'&lt;/P&gt;&lt;P&gt;then&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; flag=&lt;STRONG&gt;1&lt;/STRONG&gt;;&lt;/P&gt;&lt;P&gt;Else &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; flag=&lt;STRONG&gt;0&lt;/STRONG&gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;run&lt;/STRONG&gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Mirisa&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 17 Dec 2015 21:15:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239852#M44184</guid>
      <dc:creator>dunga</dc:creator>
      <dc:date>2015-12-17T21:15:40Z</dc:date>
    </item>
    <item>
      <title>Re: Do loop question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239873#M44193</link>
      <description>&lt;P&gt;Try it this way:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;if whichc('CURRENT', of time1-time12) then flag=1;&lt;/P&gt;
&lt;P&gt;else flag=0;&lt;/P&gt;</description>
      <pubDate>Thu, 17 Dec 2015 22:31:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239873#M44193</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2015-12-17T22:31:43Z</dc:date>
    </item>
    <item>
      <title>Re: Do loop question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239875#M44194</link>
      <description>You don't need a do loop you need the whichc function. &lt;BR /&gt;&lt;BR /&gt;If whichc('Current', of time1-time12)&amp;gt;0 then flag=1;</description>
      <pubDate>Thu, 17 Dec 2015 22:37:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239875#M44194</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2015-12-17T22:37:11Z</dc:date>
    </item>
    <item>
      <title>Re: Do loop question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239876#M44195</link>
      <description>Make sure the case matches...</description>
      <pubDate>Thu, 17 Dec 2015 22:37:30 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239876#M44195</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2015-12-17T22:37:30Z</dc:date>
    </item>
    <item>
      <title>Re: Do loop question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239883#M44198</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want (drop=i);
set have;
array Time(*) Time1-Time12;
flag=0;
do i = 1 to 12;
   if Time(i) = "CURRENT" then do ;
   		flag=1;
   		LEAVE;
   end;
end;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 17 Dec 2015 23:05:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239883#M44198</guid>
      <dc:creator>mohamed_zaki</dc:creator>
      <dc:date>2015-12-17T23:05:12Z</dc:date>
    </item>
    <item>
      <title>Re: Do loop question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239887#M44201</link>
      <description>&lt;P&gt;If you don't want to worry about the number of Time variables or the case of the strings use:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
set have;
array T(*) Time:;
do i = 1 to dim(T) until(flag);
   flag = flag or upcase(T{i}) = "CURRENT";
   end;
drop i;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 17 Dec 2015 23:24:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239887#M44201</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2015-12-17T23:24:13Z</dc:date>
    </item>
    <item>
      <title>Re: Do loop question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239898#M44207</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
 set have;
 array x{*} time1-time12;
 flag='CURRENT' in x;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 18 Dec 2015 01:46:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239898#M44207</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2015-12-18T01:46:27Z</dc:date>
    </item>
    <item>
      <title>Re: Do loop question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239926#M44214</link>
      <description>&lt;P&gt;Hi Astounding, Reeza, Zaki, PGStats and Ksharp,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Many thanks to veryone of you.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Reponses are great!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dunga&lt;/P&gt;</description>
      <pubDate>Fri, 18 Dec 2015 04:33:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/239926#M44214</guid>
      <dc:creator>dunga</dc:creator>
      <dc:date>2015-12-18T04:33:43Z</dc:date>
    </item>
    <item>
      <title>Re: Do loop question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/257681#M49495</link>
      <description>Hi Xia, your code is very helpful, but it is pointing only to one variable and exact text (CURRENT  in this case). Can you please tell me the code for Two variable ('Current' and 'Past' in this case) with UPCASE option? I mean flag it when either Current or Past exist regardless of upper or lower case. Thanks.&lt;BR /&gt;&lt;BR /&gt;data have;&lt;BR /&gt;input ID    (Time1 Time2 Time3) ( &amp;amp; $10.);&lt;BR /&gt;cards; &lt;BR /&gt;1234     CURRENT	Current		Current&lt;BR /&gt;5678     Current	Current3	Current&lt;BR /&gt;3456     Current	Past			Current&lt;BR /&gt;2345     Current	CURRENT		Current2&lt;BR /&gt;;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;data want1;&lt;BR /&gt;set have;&lt;BR /&gt;array x{*} time1-time3;&lt;BR /&gt;flag='CURRENT' in x;&lt;BR /&gt;run;</description>
      <pubDate>Fri, 18 Mar 2016 19:20:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/257681#M49495</guid>
      <dc:creator>mlogan</dc:creator>
      <dc:date>2016-03-18T19:20:52Z</dc:date>
    </item>
    <item>
      <title>Re: Do loop question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/257683#M49497</link>
      <description>Hi PG, Your code working perfect. Would you please show me the code when there are two variable I am comparing with?&lt;BR /&gt;I mean flag the observation when:&lt;BR /&gt;a) 'Current' AND 'Past' exist and &lt;BR /&gt;b) 'Current' OR 'Past' exist.&lt;BR /&gt;(using upcase in both cases)&lt;BR /&gt;Thanks,&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;data have;&lt;BR /&gt;input ID    (Time1 Time2 Time3) ( &amp;amp; $10.);&lt;BR /&gt;cards; &lt;BR /&gt;1234     CURRENT	Current		Current&lt;BR /&gt;5678     Current	Current3	Current&lt;BR /&gt;3456     Current	Past		Current&lt;BR /&gt;2345     Current	CURRENT		Current2&lt;BR /&gt;;&lt;BR /&gt;run;</description>
      <pubDate>Fri, 18 Mar 2016 19:27:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/257683#M49497</guid>
      <dc:creator>mlogan</dc:creator>
      <dc:date>2016-03-18T19:27:42Z</dc:date>
    </item>
    <item>
      <title>Re: Do loop question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/257735#M49524</link>
      <description>&lt;P&gt;Opps. Missing something.&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;data have;&lt;BR /&gt;input ID (Time1 Time2 Time3) ( &amp;amp; $10.);&lt;BR /&gt;cards; &lt;BR /&gt;1234 CURRENT Current Current&lt;BR /&gt;5678 Current Current3 Current&lt;BR /&gt;3456 Current Past Current&lt;BR /&gt;2345 Currernt CURRENrT Current2&lt;BR /&gt;;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;data want1;&lt;BR /&gt;set have;&lt;BR /&gt;array x{*} $ time1-time3;&lt;BR /&gt;flag=0;&lt;BR /&gt;do i=1 to dim(x);&lt;BR /&gt; if prxmatch('/^(current|past)$/i',strip(x{i})) then do;flag=1;leave;end;&lt;BR /&gt;end;&lt;BR /&gt;drop i;&lt;BR /&gt;run;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 19 Mar 2016 04:04:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/257735#M49524</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2016-03-19T04:04:56Z</dc:date>
    </item>
    <item>
      <title>Re: Do loop question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/257802#M49546</link>
      <description>Thanks Xia, It worked for me perfect!!!</description>
      <pubDate>Sun, 20 Mar 2016 01:58:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Do-loop-question/m-p/257802#M49546</guid>
      <dc:creator>mlogan</dc:creator>
      <dc:date>2016-03-20T01:58:54Z</dc:date>
    </item>
  </channel>
</rss>

