BookmarkSubscribeRSS Feed
JasonNC
Quartz | Level 8

Hi

3 REPLIES 3
Patrick
Opal | Level 21

This weird value is a very small number. I strongly assume this is caused by some precision issue. Does your data source come from a data base?

One way around this:

SUM(round(AMT,0.00000000001)) AS ID_AMT,PROVIDER

pradeepalankar
Obsidian | Level 7

Give it a proper format like :

proc sql;

create table test as

select sum(AMT) format = 12.5  as sum ,ID from source_table

group by ID;

quit;

  sum  ID

ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ

0.00000  XXX

Patrick
Opal | Level 21

Using a format won't resolve the precision issue but will only mask it. I believe what the OP needs to do is to find an explanation why there is such a precision issue and then resolve it.

One reason can be that the data originates from a database. Numeric precision has been discussed here in these forums multiple times, it's documented and there are also whitepapers around.

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 3 replies
  • 1175 views
  • 6 likes
  • 3 in conversation