Hello all,
I have a dataset with two dates Date_1 and Date_2. Date_1 has format datetime16. and informat 16. Date_2 has format $8. and informat $8. How do I calculate the date difference i.e Date_1- Date_2 in days and months.
Date_1 | Date_2 |
29Aug09:14:02:00 | 20090621 |
output:
Days | Months |
69 | 2.26 |
Appreciate your help,
Thanks!
A fun with functions type exercise.
1. Convert dates to same type - use DATEPART() to get date portion of a DATETIME variable and use INPUT() to convert the character variable to a date variable.
2. Use INTCK() to calculate the differences - note the rules on how it's calculated and the last parameter (fourth) that defines the rules.
To convert the character variable you can use:
date2_var = input(date_2, yymmdd8.);
format date2_var date9.;
Here's the link to the most recent documentation on functions:
If you have difficulty with the remaining functions, post what you've tried and what errors or incorrect output you receive.
A fun with functions type exercise.
1. Convert dates to same type - use DATEPART() to get date portion of a DATETIME variable and use INPUT() to convert the character variable to a date variable.
2. Use INTCK() to calculate the differences - note the rules on how it's calculated and the last parameter (fourth) that defines the rules.
To convert the character variable you can use:
date2_var = input(date_2, yymmdd8.);
format date2_var date9.;
Here's the link to the most recent documentation on functions:
If you have difficulty with the remaining functions, post what you've tried and what errors or incorrect output you receive.
data _null_;
infile cards expandtabs truncover;
input Date_1 : datetime32. Date_2 : yymmdd8.;
days=datepart(date_1)-date_2;
month=mod(yrdif(date_2,datepart(date_1),'act/act'),1)*12;
put days= month= ;
cards;
29Aug09:14:02:00 20090621
;
run;
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
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.
Ready to level-up your skills? Choose your own adventure.