DATA Step, Macro, Functions and more

How to make it to with two demicals?

Accepted Solution Solved
Reply
Frequent Contributor
Posts: 86
Accepted Solution

How to make it to with two demicals?

data have;
input a$ 10.;
cards;
1.2346565
1.244
1.562546
run;


Accepted Solutions
Solution
‎12-22-2017 07:53 AM
PROC Star
Posts: 1,259

Re: How to make it to with two demicals?

[ Edited ]
Posted in reply to rajeshalwayswel

Do you want to keep the varaible type character? If so

 

data have;
input a$ 10.;
cards;
1.2346565
1.244
1.562546
run;

data want_round;
	set have;
	round_a=strip(put(round(a, .01), best6.2));
run;

View solution in original post


All Replies
Super User
Super User
Posts: 9,599

Re: How to make it to with two demicals?

Posted in reply to rajeshalwayswel

Pro tip - start by reading how to post a question.  Explain what you want, using the body of the post to explain this.  A post topic saying make it work is not in the least bit polite or helpful.

 

Taking a rough guess, I would say you want a numeric which is rounded to 2 decimal places from that text, if so:

data want;
  set have;
  want=round(input(a,best.),0.01);
run;
Solution
‎12-22-2017 07:53 AM
PROC Star
Posts: 1,259

Re: How to make it to with two demicals?

[ Edited ]
Posted in reply to rajeshalwayswel

Do you want to keep the varaible type character? If so

 

data have;
input a$ 10.;
cards;
1.2346565
1.244
1.562546
run;

data want_round;
	set have;
	round_a=strip(put(round(a, .01), best6.2));
run;
☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 2 replies
  • 143 views
  • 0 likes
  • 3 in conversation