Greetings Community,
I have this text variable that captures the dates
03/15/2015 |
3/17/2016 |
Some with leading zeros (for Jan to Sep), and some without the leading zeros. I need to convert it into a date format.
I tried this code:
Correct_date = input(text_date,ddmmyy10.) ;
format Correct_date YYMMDD10.;
I received this error:
NOTE: Invalid argument to function INPUT at line 30 column 15.
Sure thing 🙂
data have;
text_date="03/15/2015";output;
text_date="3/17/2016";output;
text_date="05/0/2015";output;
text_date="11/0/2016";output;
run;
data want;
set have;
text_date=tranwrd(text_date, '/0/', '/1/');
Correct_date = input(text_date,mmddyy10.);
format Correct_date mmddyy10.;
run;
You almost have it. You have to use the MMDDYY10. informat and not the DDMMYY10. Like this
data have;
text_date="03/15/2015";output;
text_date="3/17/2016";output;
run;
data want;
set have;
Correct_date = input(text_date,mmddyy10.);
format Correct_date mmddyy10.;
run;
Thank you draycut for the code. I found where the problem is. I have some dates with month and year, but that have 0 for the day as follows:
05/0/2015
11/0/2016
The converted dates with your code are missings. I need to convert them to the beginning of the month, if the day is 0 as follows:
05/01/2015
11/01/2016
Any idea how that can be done?
Thanks!
Sure thing 🙂
data have;
text_date="03/15/2015";output;
text_date="3/17/2016";output;
text_date="05/0/2015";output;
text_date="11/0/2016";output;
run;
data want;
set have;
text_date=tranwrd(text_date, '/0/', '/1/');
Correct_date = input(text_date,mmddyy10.);
format Correct_date mmddyy10.;
run;
Save $250 on SAS Innovate and get a free advance copy of the new SAS For Dummies book! Use the code "SASforDummies" to register. Don't miss out, May 6-9, in Orlando, Florida.
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.
Ready to level-up your skills? Choose your own adventure.