<?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: Multiple If-then conditions in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Multiple-If-then-conditions/m-p/492462#M129412</link>
    <description>thank you</description>
    <pubDate>Tue, 04 Sep 2018 19:49:13 GMT</pubDate>
    <dc:creator>arde</dc:creator>
    <dc:date>2018-09-04T19:49:13Z</dc:date>
    <item>
      <title>Multiple If-then conditions</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Multiple-If-then-conditions/m-p/492439#M129403</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I am trying to get this output:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE width="542"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="80"&gt;Status&lt;/TD&gt;
&lt;TD width="64"&gt;Days&lt;/TD&gt;
&lt;TD width="91"&gt;DATE1&lt;/TD&gt;
&lt;TD width="101"&gt;DATE2&lt;/TD&gt;
&lt;TD width="206"&gt;flag&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="80"&gt;Unknown&lt;/TD&gt;
&lt;TD width="64"&gt;20&lt;/TD&gt;
&lt;TD width="91"&gt;9-Sep-18&lt;/TD&gt;
&lt;TD width="101"&gt;10-Sep-18&lt;/TD&gt;
&lt;TD width="206"&gt;Dates do not match&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="80"&gt;Unknown&lt;/TD&gt;
&lt;TD width="64"&gt;30&lt;/TD&gt;
&lt;TD width="91"&gt;.&lt;/TD&gt;
&lt;TD width="101"&gt;10-Sep-18&lt;/TD&gt;
&lt;TD width="206"&gt;data is missing&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="80"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;40&lt;/TD&gt;
&lt;TD width="91"&gt;10-Sep-18&lt;/TD&gt;
&lt;TD width="101"&gt;10-Sep-18&lt;/TD&gt;
&lt;TD width="206"&gt;data is missing&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="80"&gt;Unknown&lt;/TD&gt;
&lt;TD width="64"&gt;40&lt;/TD&gt;
&lt;TD width="91"&gt;10-Sep-18&lt;/TD&gt;
&lt;TD width="101"&gt;10-Sep-18&lt;/TD&gt;
&lt;TD width="206"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data have;&lt;BR /&gt;length Status $10 Days 8.;&lt;BR /&gt;input STATUS $ DATE1 :date9. DATE2 :date9. Days;&lt;BR /&gt;format DATE1 date9. DATE2 date9. ;&lt;BR /&gt;datalines;&lt;BR /&gt;Unknown 09Sep2018 10Sep2018 20&lt;BR /&gt;Unknown . 10Sep2018 30&lt;BR /&gt;. 10Sep2018 10Sep2018 40&lt;BR /&gt;Unknown 10Sep2018 10Sep2018 40&lt;BR /&gt;;&lt;BR /&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data want;&lt;BR /&gt;set have;&lt;BR /&gt;length flag $ 60;&lt;BR /&gt;if DATE1 ne null and DATE2 ne null and DATE1 ne DATE2 then do flag = "Dates do not match"; end;&lt;BR /&gt;if (DATE1 =null or Status = null) and (Days &amp;gt; 20) then do flag="data is missing"; end;&lt;BR /&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The first if statement works, but the second does not.&amp;nbsp; Any help would be truly appreciated.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 04 Sep 2018 19:14:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Multiple-If-then-conditions/m-p/492439#M129403</guid>
      <dc:creator>arde</dc:creator>
      <dc:date>2018-09-04T19:14:00Z</dc:date>
    </item>
    <item>
      <title>Re: Multiple If-then conditions</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Multiple-If-then-conditions/m-p/492448#M129407</link>
      <description>&lt;P&gt;&lt;SPAN&gt;DATE1 =null&amp;nbsp;this may be your issue, is there a note in your log to that effect?&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;I get one when I try and use NULL.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;I think the valid syntax in SAS would be using the MISSING. I recommend missing because it works for numeric and character. Otherwise a numeric missing is denoted with a period and a character missing is with a space.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;if not missing(date1)  then ...;

*check how many missing among a list of variables;
if nmiss(date1, date2) eq 0 then ...;

*if numeric variable;
if date1 ne . then ...;

*if characater variable;
if date1 ne '' then ...;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/50684"&gt;@arde&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I am trying to get this output:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE width="542"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="80"&gt;Status&lt;/TD&gt;
&lt;TD width="64"&gt;Days&lt;/TD&gt;
&lt;TD width="91"&gt;DATE1&lt;/TD&gt;
&lt;TD width="101"&gt;DATE2&lt;/TD&gt;
&lt;TD width="206"&gt;flag&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="80"&gt;Unknown&lt;/TD&gt;
&lt;TD width="64"&gt;20&lt;/TD&gt;
&lt;TD width="91"&gt;9-Sep-18&lt;/TD&gt;
&lt;TD width="101"&gt;10-Sep-18&lt;/TD&gt;
&lt;TD width="206"&gt;Dates do not match&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="80"&gt;Unknown&lt;/TD&gt;
&lt;TD width="64"&gt;30&lt;/TD&gt;
&lt;TD width="91"&gt;.&lt;/TD&gt;
&lt;TD width="101"&gt;10-Sep-18&lt;/TD&gt;
&lt;TD width="206"&gt;data is missing&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="80"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;40&lt;/TD&gt;
&lt;TD width="91"&gt;10-Sep-18&lt;/TD&gt;
&lt;TD width="101"&gt;10-Sep-18&lt;/TD&gt;
&lt;TD width="206"&gt;data is missing&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="80"&gt;Unknown&lt;/TD&gt;
&lt;TD width="64"&gt;40&lt;/TD&gt;
&lt;TD width="91"&gt;10-Sep-18&lt;/TD&gt;
&lt;TD width="101"&gt;10-Sep-18&lt;/TD&gt;
&lt;TD width="206"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data have;&lt;BR /&gt;length Status $10 Days 8.;&lt;BR /&gt;input STATUS $ DATE1 :date9. DATE2 :date9. Days;&lt;BR /&gt;format DATE1 date9. DATE2 date9. ;&lt;BR /&gt;datalines;&lt;BR /&gt;Unknown 09Sep2018 10Sep2018 20&lt;BR /&gt;Unknown . 10Sep2018 30&lt;BR /&gt;. 10Sep2018 10Sep2018 40&lt;BR /&gt;Unknown 10Sep2018 10Sep2018 40&lt;BR /&gt;;&lt;BR /&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data want;&lt;BR /&gt;set have;&lt;BR /&gt;length flag $ 60;&lt;BR /&gt;if DATE1 ne null and DATE2 ne null and DATE1 ne DATE2 then do flag = "Dates do not match"; end;&lt;BR /&gt;if (DATE1 =null or Status = null) and (Days &amp;gt; 20) then do flag="data is missing"; end;&lt;BR /&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The first if statement works, but the second does not.&amp;nbsp; Any help would be truly appreciated.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 04 Sep 2018 19:28:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Multiple-If-then-conditions/m-p/492448#M129407</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2018-09-04T19:28:37Z</dc:date>
    </item>
    <item>
      <title>Re: Multiple If-then conditions</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Multiple-If-then-conditions/m-p/492454#M129410</link>
      <description>&lt;P&gt;The first statement working is a happy accident.&amp;nbsp; It forces SAS to create a variable named NULL which will be numeric and contain a missing value.&amp;nbsp; So you accidentally end up checking whether DATE1 contains a missing value, and whether DATE2 contains a missing value.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;NULL is not a keyword in a DATA step (which is why your second statement runs into trouble).&amp;nbsp; Try it this way:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;data want;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;set have;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;length flag $ 60;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;if (DATE1 ne .) and (DATE2 ne .) and DATE1 ne DATE2 then flag = "Dates do not match";&amp;nbsp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;if (DATE1 = . or Status = " ") and (Days &amp;gt; 20) then flag="data is missing";&amp;nbsp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;run;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 04 Sep 2018 19:37:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Multiple-If-then-conditions/m-p/492454#M129410</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2018-09-04T19:37:22Z</dc:date>
    </item>
    <item>
      <title>Re: Multiple If-then conditions</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Multiple-If-then-conditions/m-p/492457#M129411</link>
      <description>&lt;P&gt;thank you&lt;/P&gt;</description>
      <pubDate>Tue, 04 Sep 2018 19:44:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Multiple-If-then-conditions/m-p/492457#M129411</guid>
      <dc:creator>arde</dc:creator>
      <dc:date>2018-09-04T19:44:27Z</dc:date>
    </item>
    <item>
      <title>Re: Multiple If-then conditions</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Multiple-If-then-conditions/m-p/492462#M129412</link>
      <description>thank you</description>
      <pubDate>Tue, 04 Sep 2018 19:49:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Multiple-If-then-conditions/m-p/492462#M129412</guid>
      <dc:creator>arde</dc:creator>
      <dc:date>2018-09-04T19:49:13Z</dc:date>
    </item>
  </channel>
</rss>

