Dear,
I have a numeric variable 'Time'containing some numbers with decimals. I need to convert the variable to chracter form. I am not getting the output i need with my codes shown below. Please help
Time
0
0.5
1
1.5
2
2.5
My code;
PKT=put(Time__h_,8.1);
if PKT='0' then PKT1='PRE-DOSE';
my code generates output;
PKT1
0.0
0.5
1.0
1.5
2.0
2.5
OUTPUT i need;
PKT1
PRE-DOSE
0.5
1
1.5
2
2.5
My another code:
PKT=put(Time__h_,8.);
if PKT='0' then PKT1='PRE-DOSE';
Output generated;
PKT1
0
1
1
2
2
3
data want;
set have;
if Time eq 0 then charvar ='PRE-DOSE';
else charvar = STRIP(PUT(TIME, best32.));
run;
Use format best. and left align option in PUT function.
data have;
input Time;
datalines;
0
0.5
1
1.5
2
2.5
;
data want;
set have;
if Time = 0 then PKT = "PRE-DOSE";
else PKT = put(Time, best. -l);
run;
proc print; run;
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.