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;
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
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.