Hello SAS world!!
I want to calculate difference between two dates, which are in the following formate: "12JUL2012 and 20120711".
I got a date difference as "-20101525", which is utterly wrong. Can someone help me with this problem?
Thanks
--Sujith
I suspect that DEATH_DT is actually just a number and not a date at all. If that's true, you could try:
Days_to_Death = mindate - input(put(death_dt, 8.), yymmdd8.);
You say formats. Can you confirm that date formats are applied to both variables? Make sure it's not numeric with a numeric or datetime format.
What SAS code got you that result?
mindate DEATH_DT Days_to_Death
12JUL2012 20120711 -20101525
data M.Death;
set M.Death;
Days_to_Death = (mindate-DEATH_DT);
run;
It looks like DEATH_DT is a SAS datetime and not a SAS date. Try
Days_to_Death = (mindate-datepart(DEATH_DT));
I suspect that DEATH_DT is actually just a number and not a date at all. If that's true, you could try:
Days_to_Death = mindate - input(put(death_dt, 8.), yymmdd8.);
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
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.