I am making a mock data set. It doesn't like read in the dates.
Here is the first few lines with the first row:
data mockdata;
input LINK_I CARDNMBR DATE $ Date9. ACTIVE DELQs;
datalines;
1 1 30JUN2014 1 1
;
run;
In the output, it cuts off the last digit and gives 30JUN201 and it considers it a charater, not a date 😞
What does the $ imply in the input statement?
Remove it for starters.
I thought you had to put that after a variable name to say its a character.
If I remove $ i.e. have:
data mockdata;
input LINK_I CARDNMBR DATE Date9. ACTIVE DELQs;
datalines;
1 1 30JUN2014 1 1
then the date value for first row is 19904. I don't want it to show as a number of days since 1960. I just want it to show as 30JUN2014.
If I remove "Date9." i.e. :
data mockdata;
input LINK_I CARDNMBR DATE ACTIVE DELQs;
datalines;
then the whole date column shows as missings (has ".")
Using a date informat does not automatically assign a display format to a variable; so you need a separate
format date date9.;
statement.
data mockdata;
input LINK_I CARDNMBR DATE : Date9. ACTIVE DELQs;
format date date9.;
datalines;
1 1 30JUN2014 1 1
Thanks. This works.
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 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.