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 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

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
  • 457 views
  • 0 likes
  • 2 in conversation