I have a dataset where I have to convert dates (MM/DD/YYYY) from a character variable to a date variable.
After many different attempts, my code is still experiencing errors. Ultimately I want to convert the dates from character to numeric format and restrict my dataset to those observations only with date after 7/1/2014 following this step
the error message is
NOTE: Invalid argument to function INPUT"
code:
data data;
set data1;
newvar= INPUT(oldvar, date9.);
run;
So if your dates are in MM/DD/YYYY format, why are you using date9. informat. Shouldn't you be using mmddyy10. infomat in your input function?
Like-
data data;
set data1;
newvar= INPUT(oldvar, mmddyy10.);
if newvar>'01JUL2014'd;
run;
So if your dates are in MM/DD/YYYY format, why are you using date9. informat. Shouldn't you be using mmddyy10. infomat in your input function?
Like-
data data;
set data1;
newvar= INPUT(oldvar, mmddyy10.);
if newvar>'01JUL2014'd;
run;
It is good practice to assign some sort of date format to the result of a date value creation so us humans can see what date SAS resovled the value to.
Sometimes people think there text variable is in a layout such as mm/dd/yyyy but SAS reports errors becaus the values are actually dd/mm/yyyy. Or they are mixed. 05/04/2017: is this actualy May 4 or Apr 5. The ones that do not get an error may give you some hints when you look at them.
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.