I know this is going to sound so ridiculous, but bear with me, I'm fairly new to SAS and please in answer I am looking for example code. I have a dataset that I am preparing to do a linkage on. The date format is wrong for a variable it is a character defined variable with the numeric string formatted MMDDYYYY. I need to convert it to numeric so that this code below will work for converting the date. How do I convert the variable to numeric so I can use the code below?
data set;
set set;
DOB=put(DOB,yymmdd8.);
run;
Your code is for creating a character variable from a date value. So if your original variable is also character then you just add an INPUT() function call to convert it to a date so the PUT() function will work.
data WANT;
set HAVE;
DOB=put(input(DOB,mmddyy8.),yymmddN8.);
run;
Also if you want the result ot look like YYYYMMDD (with no delimiters) then use the yymmddN format.
Your code is for creating a character variable from a date value. So if your original variable is also character then you just add an INPUT() function call to convert it to a date so the PUT() function will work.
data WANT;
set HAVE;
DOB=put(input(DOB,mmddyy8.),yymmddN8.);
run;
Also if you want the result ot look like YYYYMMDD (with no delimiters) then use the yymmddN format.
Thank you! I almost had it right, but was missing just a small part. This is perfect!
Please give @Tom credit by marking his answer as the solution.
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 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.