Hi
I am facing a problem to convert the numeric function to the date part
my data is
515 |
529 |
540 |
545 |
600 |
In the above 515 means 5:15
529 means 5:29
Please advise
Thanks
This "I am facing a problem to convert the numeric function to the date part" doesn't really make sense as the data you give and logic is for time? I would be cautious about converting just a number like that to a time. You could simply:
data want; input num; tmp=strip(put(num,best.)); tmp=cats(char(tmp,1),":",substr(tmp,2,2)); datalines; 515 529 ; run;
But I suspect thats not really your problem, and your issue includes dates as well. Perhaps provide fuller information, provide what you have as test data in the form of a datastep and what you want out at the end.
You need to fix such issues at the point where data enters your SAS environment.
Show how you imported the data into SAS. Just using the correct format there will remove the problem.
data want;
input num;
want=hms(int(num/100),mod(num,100),0);
format want hhmm5.;
datalines;
515
529
;
run;
Or:
data want;
input num;
want=input(put(num,z4.),hhmmss4.);
format want hhmm5.;
datalines;
515
529
;
run;
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.