SAS Programming

DATA Step, Macro, Functions and more
BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
SASuserlot
Barite | Level 11

I have the dates like 2018-01,  2014-02, 1996-08, 2012-06, I would like to find the last day of that month (like is 31, 30 , or 28). I believe it also need to include if any leap years are there. Thanks in advance

1 ACCEPTED SOLUTION

Accepted Solutions
Reeza
Super User
endMonth = intnx('month', dateVariable, 0, 'e');

Use INTNX and the alignment parameter, E, which will align a date to the end of the month.

 


@SASuserlot wrote:

I have the dates like 2018-01,  2014-02, 1996-08, 2012-06, I would like to find the last day of that month (like is 31, 30 , or 28). I believe it also need to include if any leap years are there. Thanks in advance


 

View solution in original post

4 REPLIES 4
Reeza
Super User
endMonth = intnx('month', dateVariable, 0, 'e');

Use INTNX and the alignment parameter, E, which will align a date to the end of the month.

 


@SASuserlot wrote:

I have the dates like 2018-01,  2014-02, 1996-08, 2012-06, I would like to find the last day of that month (like is 31, 30 , or 28). I believe it also need to include if any leap years are there. Thanks in advance


 

SASuserlot
Barite | Level 11
thanks it worked
PaigeMiller
Diamond | Level 26

Are these character strings, or numeric dates formatted to appear as 2018-01?

 

The INTNX function makes it easy to determine the last day of the month, if you have numeric dates in a variable which I have creatively named VARIABLENAME. The 'e' tells INTNX to find the last day of the month contained in VARIABLENAME.

 

last_day_of_month=intnx('month',variablename,0,'e');

 

--
Paige Miller
SASuserlot
Barite | Level 11

thanks it worked

sas-innovate-white.png

Our biggest data and AI event of the year.

Don’t miss the livestream kicking off May 7. It’s free. It’s easy. And it’s the best seat in the house.

Join us virtually with our complimentary SAS Innovate Digital Pass. Watch live or on-demand in multiple languages, with translations available to help you get the most out of every session.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 4 replies
  • 9937 views
  • 2 likes
  • 3 in conversation