DATA Step, Macro, Functions and more

Date data

Reply
Frequent Contributor
Posts: 142

Date data

Hello

In Example1  I enter a date data as a character

 

Data Example1;
input ID 1
Loan_ID 3
Sum_Loan 5-7
Interest 9-11
date_Loan $ 13-22 ;
Cards;
1 1 100 2.4 01/06/2018
;
run;

 

 

In Example2  I am trying to enter a date data as sas numeric and I get empty values.Why????

Data  Example2;
input ID 1
Loan_ID 3
Sum_Loan 5-7
Interest 9-11
date_Loan 13-22 ;
Cards;
1 1 100 2.4 01/06/2018
;
run;

Super User
Posts: 10,280

Re: Date data

SAS does not automatically recognize a date (or a time value) as such, so you need to give it an informat:

data  example2;
input
  ID
  Loan_ID
  Sum_Loan
  Interest
  date_Loan :ddmmyy10.
;
format date ddmmyy10.;
cards;
1 1 100 2.4 01/06/2018
;
run;
---------------------------------------------------------------------------------------------
Maxims of Maximally Efficient SAS Programmers
How to convert datasets to data steps
How to post code
Super User
Super User
Posts: 8,127

Re: Date data

[ Edited ]

If you want SAS to read '01/06/2018' as the first of june 2018 then use the DDMMYY informat. If instead you want it to treat that as the sixth of January then use the MMDDYY informat.  Either way make sure to attach a format so that SAS doesn't display the date as the raw number of days since the beginning of 1960.

 

data Example1;
  input
    ID 1
    Loan_ID 3
    Sum_Loan 5-7
    Interest 9-11
    @13 date_mdy mmddyy10.
    @13 date_dmy ddmmyy10.
  ;
  format date: date9. ;
cards;
1 1 100 2.4 01/06/2018
;

 

In future it might be best to store your date strings in either Year, Month, Day order or use SAS's DATE format and avoid the confusion.

image.png

 

 

Ask a Question
Discussion stats
  • 2 replies
  • 76 views
  • 0 likes
  • 3 in conversation