I have the following code I am using to fill the date if missing with end of Previous month date. But some how it give me date = 01/01/1960
data have;
input ID date1 : mmddyy10. date2 : mmddyy10. ;
format date1 date2 mmddyy10. ;
cards;
1 12/31/2014 1/5/2015
1 1/5/2015 2/15/2015
1 2/16/2015 .
run;
data _NULL_;
call symputx('enddt', put(intnx('month',date(),-1,'e'), mmddyy10.)) ;
run;
data have2;
set have;
if date2 = . then date2 = &enddt.;
run;
You are replacing missing values in date2 with the result of expression 02/28/2015 = 0.0000354
you must give date constants the proper format :
data _NULL_;
call symputx('enddt', put(intnx('month',date(),-1,'e'), date9.)) ;
run;
%put &enddt;
data have2;
set have;
if date2 = . then date2 = "&enddt."d;
run;
PG
You are replacing missing values in date2 with the result of expression 02/28/2015 = 0.0000354
you must give date constants the proper format :
data _NULL_;
call symputx('enddt', put(intnx('month',date(),-1,'e'), date9.)) ;
run;
%put &enddt;
data have2;
set have;
if date2 = . then date2 = "&enddt."d;
run;
PG
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.