<?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 read a date variable containing letters in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/How-read-a-date-variable-containing-letters/m-p/286305#M58693</link>
    <description>&lt;P&gt;How are 2/3 being determined?&lt;/P&gt;</description>
    <pubDate>Fri, 22 Jul 2016 01:44:43 GMT</pubDate>
    <dc:creator>Reeza</dc:creator>
    <dc:date>2016-07-22T01:44:43Z</dc:date>
    <item>
      <title>How read a date variable containing letters</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-read-a-date-variable-containing-letters/m-p/286301#M58691</link>
      <description>&lt;P&gt;Dear,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have a variable with date contains UN and UNK string. How to read it. &amp;nbsp;I need the output in character date form. Please help&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; id &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;date1 &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; date2&lt;/P&gt;&lt;P&gt;&amp;nbsp; 1 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 06/01/2012&lt;/P&gt;&lt;P&gt;&amp;nbsp; 2 &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;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;UN-UNK-2014&lt;/P&gt;&lt;P&gt;&amp;nbsp;3 &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;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;UN-Sep-2014&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;output needed;&lt;/P&gt;&lt;P&gt;id &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;chadate&lt;/P&gt;&lt;P&gt;1 &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; 2012-06-01 &amp;nbsp;&lt;/P&gt;&lt;P&gt;2 &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; 2014&lt;/P&gt;&lt;P&gt;3 &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; 2010-09&amp;nbsp; &amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 22 Jul 2016 01:20:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-read-a-date-variable-containing-letters/m-p/286301#M58691</guid>
      <dc:creator>knveraraju91</dc:creator>
      <dc:date>2016-07-22T01:20:00Z</dc:date>
    </item>
    <item>
      <title>Re: How read a date variable containing letters</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-read-a-date-variable-containing-letters/m-p/286305#M58693</link>
      <description>&lt;P&gt;How are 2/3 being determined?&lt;/P&gt;</description>
      <pubDate>Fri, 22 Jul 2016 01:44:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-read-a-date-variable-containing-letters/m-p/286305#M58693</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2016-07-22T01:44:43Z</dc:date>
    </item>
    <item>
      <title>Re: How read a date variable containing letters</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-read-a-date-variable-containing-letters/m-p/286325#M58704</link>
      <description>&lt;P&gt;Tedious, but simple&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input id    (date1 date2) (:$12.);
datalines;
  1     06/01/2012    .
  2       .           UN-UNK-2014
 3        .           UN-Sep-2014
 ;

data want;
set have;
length chadate $10 y $4 m $3 d $2;
date = coalescec(date1, date2);
y = scan(date,3,"-/");
m = upcase(scan(date,2,"-/"));
d = scan(date,1,"-/");
if anyalpha(m) then
    m = choosec(whichc(m,"JAN","FEB","MAR","APR","MAY","JUN","JUL","AUG","SEP","OCT","NOV","DEC") + 1,
        " ","01","02","03","04","05","06","07","08","09","10","11","12");
if anyalpha(d) or missing(m) then d = " ";
chadate = catx("-", y, m, d);
drop date y m d;
run;

proc print; run;


&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 22 Jul 2016 04:54:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-read-a-date-variable-containing-letters/m-p/286325#M58704</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2016-07-22T04:54:23Z</dc:date>
    </item>
    <item>
      <title>Re: How read a date variable containing letters</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-read-a-date-variable-containing-letters/m-p/286328#M58706</link>
      <description>&lt;PRE&gt;
As long as you make sure there are only UN and UNK.



data have;
input id    (date1 date2) (:$12.);
datalines;
  1     06/01/2012    .
  2       .           UN-UNK-2014
 3        .           UN-Sep-2014
 ;
run;

options missing=' ';
data want;
 set have;
 if find(date2,'UNK') and find(date2,'UN') then do;
  temp_date=scan(date2,-1,'-'); missing='M';
 end;
 else if find(date2,'UN') then do;
  temp_date=put(input(cats('01',substr(date2,3)),date11.),yymmd8.); missing='D';
 end;
 date=coalescec(put(input(date1,mmddyy10.),yymmdd10.),temp_date);
 drop temp_date;
run;

&lt;/PRE&gt;</description>
      <pubDate>Fri, 22 Jul 2016 05:23:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-read-a-date-variable-containing-letters/m-p/286328#M58706</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2016-07-22T05:23:27Z</dc:date>
    </item>
    <item>
      <title>Re: How read a date variable containing letters</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-read-a-date-variable-containing-letters/m-p/286331#M58708</link>
      <description>&lt;P&gt;Thank you very much for help. I created the following code. It produced the output I needed. But I want to know is there any mistake in it. Please provide your thoughts&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;if date1 ^= . then chardate1=put(date1,is8601da.);&lt;BR /&gt;if compress(date2,'-') = : 'UNUNK' then chardate2= put(input(substr(compress(date2,'-'),6),best.),10.);&lt;BR /&gt;else if compress(date2,'-') = : 'UN' then chardate3= put(input(substr(compress(date2,'-'),3),monyy7.),yymmd7.);&lt;BR /&gt;if chardate1 ^= '' then chardate=chardate1;&lt;BR /&gt;else if chardate2 ^= '' then chardate=chardate2;&lt;BR /&gt;else if chardate3 ^= '' then chardate=chardate3;&lt;/P&gt;</description>
      <pubDate>Fri, 22 Jul 2016 05:39:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-read-a-date-variable-containing-letters/m-p/286331#M58708</guid>
      <dc:creator>knveraraju91</dc:creator>
      <dc:date>2016-07-22T05:39:14Z</dc:date>
    </item>
    <item>
      <title>Re: How read a date variable containing letters</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-read-a-date-variable-containing-letters/m-p/286333#M58709</link>
      <description>Look Good.</description>
      <pubDate>Fri, 22 Jul 2016 05:55:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-read-a-date-variable-containing-letters/m-p/286333#M58709</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2016-07-22T05:55:04Z</dc:date>
    </item>
  </channel>
</rss>

