Hello
I have a character variabel "date" in a data set "test" where they are given as
201212
201312
osv.
I would like a time variabel so 201212 becomes 12/31/12. How can this be done?
Regards, Søren
You have a charater field which represents part of a date. You want a numeric value which is the SAS interpretation of the date. You don't say what the default is on Day however, given that you put 31 in the example, I assume you want the last day of the month, so you would combine with a intnx:
data want;
str_date="201212";
num_date=intnx("month",input(cats(str_date,"01"),yymmdd10.),1)-1;
format num_date date9.;
run;
You have a charater field which represents part of a date. You want a numeric value which is the SAS interpretation of the date. You don't say what the default is on Day however, given that you put 31 in the example, I assume you want the last day of the month, so you would combine with a intnx:
data want;
str_date="201212";
num_date=intnx("month",input(cats(str_date,"01"),yymmdd10.),1)-1;
format num_date date9.;
run;
Nearly 200 sessions are now available on demand with the SAS Innovate Digital Pass.
Explore Now →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.
Ready to level-up your skills? Choose your own adventure.