DATA Step, Macro, Functions and more

ABOUT DATES

Reply
Contributor
Posts: 29

ABOUT DATES

I have a variable called _datadate. The format of this variable is "MMDDYY10." Our data date ranges from 05/01/2015 to 07/31/2017.

 

I have two questions. First, I need to delete all of the dates before 05/15/2015.  I use the following code to attempt this, but it does not work. How will I be able to accomplish this?

IF _datadate GE 05/15/2015 then OUTPUT;

The second question is as follows: 

 

I want to get all of the DD values equal to 14 and 15. I want a function that will detect all of 14th and 15th of each month. How can I do this?

Super User
Posts: 22,857

Re: ABOUT DATES

1.check the list of functions - DAY() 

2. Date liberals are specified as 'ddMONyyyy'd or ‘01Jan2017’d

 

All of this is documented here:

http://documentation.sas.com/?docsetId=lrcon&docsetTarget=p1wj0wt2ebe2a0n1lv4lem9hdc0v.htm&docsetVer...

Super User
Super User
Posts: 9,216

Re: ABOUT DATES

Avoid coding in uppercase.

For your example:

data want;
  set have;
  where _datadate ge '15MAY2015'd and day(_datadate) in (14,15);
run;
Super User
Posts: 6,542

Re: ABOUT DATES

Those are the right tools, but the program needs a tweak:

 

data want;

set have;

where _daydate >= '15May2015'd;

if day(_daydate) in (14, 15) then delete;

run;

Ask a Question
Discussion stats
  • 3 replies
  • 154 views
  • 0 likes
  • 4 in conversation