Help using Base SAS procedures

How to remove number after decimal.

Accepted Solution Solved
Reply
New Contributor
Posts: 3
Accepted Solution

How to remove number after decimal.

Hi

Value

0

10

1.234.00

879.00

1

2.00

11.548.00

Output

0

10

1234

879

1

2

11548

How to remove number after decimal.

Thanks


Accepted Solutions
Solution
‎06-24-2014 03:34 AM
Super User
Posts: 6,948

Re: How to remove number after decimal.

x = round(x,1);

---------------------------------------------------------------------------------------------
Maxims of Maximally Efficient SAS Programmers

View solution in original post


All Replies
Solution
‎06-24-2014 03:34 AM
Super User
Posts: 6,948

Re: How to remove number after decimal.

x = round(x,1);

---------------------------------------------------------------------------------------------
Maxims of Maximally Efficient SAS Programmers
New Contributor
Posts: 3

Re: How to remove number after decimal.

Thanks. Your answer very helpful

Contributor
Posts: 30

Re: How to remove number after decimal.

Hi SAM ,

We can also  use the below piece iof code for the same .

data have ;

input id  $12.;

datalines;

0

10

  1. 1.234.00
  2. 879.00

1

  1. 2.00
  2. 11.548.00

;

data want ;

set have ;

if index (id , '.' )= 0 then x= id  ;

else

x= substr(id,1,(index(id,'.'))-1)

;

run;

Contributor
Posts: 26

Re: How to remove number after decimal.

Trouble with using the round function is that it can lead to incorrect results, as the following example demonstrates. A better(?) solution for what you want to do is to use the Int() or Intz() function.

data r ;

     input x ;

     y = round(x,1);

     z1 = Int(x);

     z2 = Intz(x);

datalines;

5.05

5.50

5.55

;;;;

☑ This topic is SOLVED.

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

Discussion stats
  • 4 replies
  • 2098 views
  • 0 likes
  • 4 in conversation