New SAS User

Completely new to SAS or trying something new with SAS? Post here for help getting started.
BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
cccc2
Calcite | Level 5

Hi,

I wrote the procedure as below,

proc print data=work.XXXX(obs=20);

Format XXX(numeric variable) ROMAN20.;

Run;

However, only some result in column XXX are shown in ROMAN style. Does anyone know why?

 

Many thanks and best wishes.

1 ACCEPTED SOLUTION

Accepted Solutions
ballardw
Super User

@cccc2 wrote:

Hi,

I wrote the procedure as below,

proc print data=work.XXXX(obs=20);

Format XXX(numeric variable) ROMAN20.;

Run;

However, only some result in column XXX are shown in ROMAN style. Does anyone know why?

 

Many thanks and best wishes.


Try sharing the values you have displayed with a best20. format.

 

Decimal portions of numbers are truncated per the format description. which can be an issue.

If you are seeing output like **************** then that means you have numeric values larger than the format can display, either because the value would require more characters than you allowed or the format has no rules for displaying the value. 

Run this data step and see if you get a clue.

data _null_;
   do x= 9500 to 10010;
     put x= roman20. x= best8.;
   end;

run;

look at the log and see where the *****

Then think if you have ever seen the character that Romans used to represent 10000 or 5000

 

 

 

View solution in original post

1 REPLY 1
ballardw
Super User

@cccc2 wrote:

Hi,

I wrote the procedure as below,

proc print data=work.XXXX(obs=20);

Format XXX(numeric variable) ROMAN20.;

Run;

However, only some result in column XXX are shown in ROMAN style. Does anyone know why?

 

Many thanks and best wishes.


Try sharing the values you have displayed with a best20. format.

 

Decimal portions of numbers are truncated per the format description. which can be an issue.

If you are seeing output like **************** then that means you have numeric values larger than the format can display, either because the value would require more characters than you allowed or the format has no rules for displaying the value. 

Run this data step and see if you get a clue.

data _null_;
   do x= 9500 to 10010;
     put x= roman20. x= best8.;
   end;

run;

look at the log and see where the *****

Then think if you have ever seen the character that Romans used to represent 10000 or 5000

 

 

 

sas-innovate-wordmark-2025-midnight.png

Register Today!

Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.


Register now!

Mastering the WHERE Clause in PROC SQL

SAS' Charu Shankar shares her PROC SQL expertise by showing you how to master the WHERE clause using real winter weather data.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 1 reply
  • 558 views
  • 0 likes
  • 2 in conversation