<?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: Using LIKE,INDEX,CONTAINS in conditional SELECT Statement in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Using-LIKE-INDEX-CONTAINS-in-conditional-SELECT-Statement/m-p/828738#M327376</link>
    <description>Thanks! Appreciate the feedback!</description>
    <pubDate>Mon, 15 Aug 2022 18:37:04 GMT</pubDate>
    <dc:creator>smackerz1988</dc:creator>
    <dc:date>2022-08-15T18:37:04Z</dc:date>
    <item>
      <title>Using LIKE,INDEX,CONTAINS in conditional SELECT Statement</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-LIKE-INDEX-CONTAINS-in-conditional-SELECT-Statement/m-p/828678#M327351</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm using this bit of code to map AVISIT/AVISITN for an ADaM dataset. My question is there a way to use functions like INDEX,SUBSTR or LIKE to map UNSCHEDULED visits as currently AVISITN is blank for this condition but this is because AVISIT is "UNSCHEDULED 1.01". I know there is other ways of doing this but just curious if it can be done this way.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=""&gt;  * AVISITN, AVISIT;
  select (upcase(visit));
    when ("SCREENING")   avisitn = 10;
    when ("DAY 1")       avisitn = 20;
    when ("WEEK 2")      avisitn = 30;
    when ("WEEK 4")      avisitn = 40;&lt;BR /&gt;    when ("WEEK 8")      avisitn = 50;
    when ("WEEK 12")     avisitn = 60;
    when ("WEEK 16")     avisitn = 70;
    when ("WEEK 20")     avisitn = 80;
    when ("RESCUE THERAPY") avisitn = 90;
    when ("EARLY TERMINATION") avisitn = 100;
    when ("UNSCHEDULED") avisitn =99; 
    otherwise put "Check: " avisitn=;
  end;
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 15 Aug 2022 14:16:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-LIKE-INDEX-CONTAINS-in-conditional-SELECT-Statement/m-p/828678#M327351</guid>
      <dc:creator>smackerz1988</dc:creator>
      <dc:date>2022-08-15T14:16:43Z</dc:date>
    </item>
    <item>
      <title>Re: Using LIKE,INDEX,CONTAINS in conditional SELECT Statement</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-LIKE-INDEX-CONTAINS-in-conditional-SELECT-Statement/m-p/828689#M327354</link>
      <description>&lt;P&gt;Either remove the variable from the SELECT statement.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt; select ;
    when (upcase(visit)="SCREENING")   avisitn = 10;
...&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Or move the extra test into the OTHERWISE block.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;...
    when ("EARLY TERMINATION") avisitn = 100;
    otherwise do; 
      if upcase(visit) =: "UNSCHEDULED" then avisitn =99; 
      else put "Check: " avisitn=;
    end;
end;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 15 Aug 2022 14:43:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-LIKE-INDEX-CONTAINS-in-conditional-SELECT-Statement/m-p/828689#M327354</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2022-08-15T14:43:01Z</dc:date>
    </item>
    <item>
      <title>Re: Using LIKE,INDEX,CONTAINS in conditional SELECT Statement</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-LIKE-INDEX-CONTAINS-in-conditional-SELECT-Statement/m-p/828691#M327355</link>
      <description>&lt;P&gt;If the value is actually "UNSCHEDULED 1.01" why did you place "UNSCHEDULED" in the When?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;You can get functions to work in When clauses but you need to change the Select as each expression has to be entered separately.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;data example;
 input visit $18.;
 select ;
    when (upcase(visit)='DAY 1') avisitn=10;
    when (index(upcase(visit),"UNSCHEDULED")&amp;gt;0) avisitn =99; 
    otherwise put "Check: " avisitn=;
  end;
datalines;
Day 1
unscheduled 1.01
;&lt;/PRE&gt;
&lt;P&gt;The argument of Select (&amp;lt;expression&amp;gt;) resolves the expression and the when is only looking for the result, so you can't mix value lists and expressions in When.&lt;/P&gt;</description>
      <pubDate>Mon, 15 Aug 2022 14:51:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-LIKE-INDEX-CONTAINS-in-conditional-SELECT-Statement/m-p/828691#M327355</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2022-08-15T14:51:03Z</dc:date>
    </item>
    <item>
      <title>Re: Using LIKE,INDEX,CONTAINS in conditional SELECT Statement</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-LIKE-INDEX-CONTAINS-in-conditional-SELECT-Statement/m-p/828693#M327356</link>
      <description>&lt;P&gt;There can be multiple Unscheduled visits so not just 1.01 in the data but would all fall under the umbrella term of "UNSCHEDULED"&amp;nbsp; per the mapping specifications&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 15 Aug 2022 14:57:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-LIKE-INDEX-CONTAINS-in-conditional-SELECT-Statement/m-p/828693#M327356</guid>
      <dc:creator>smackerz1988</dc:creator>
      <dc:date>2022-08-15T14:57:24Z</dc:date>
    </item>
    <item>
      <title>Re: Using LIKE,INDEX,CONTAINS in conditional SELECT Statement</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-LIKE-INDEX-CONTAINS-in-conditional-SELECT-Statement/m-p/828738#M327376</link>
      <description>Thanks! Appreciate the feedback!</description>
      <pubDate>Mon, 15 Aug 2022 18:37:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-LIKE-INDEX-CONTAINS-in-conditional-SELECT-Statement/m-p/828738#M327376</guid>
      <dc:creator>smackerz1988</dc:creator>
      <dc:date>2022-08-15T18:37:04Z</dc:date>
    </item>
  </channel>
</rss>

