LISTSERV at the University of Georgia
Menubar Imagemap
Home Browse Manage Request Manuals Register
Previous messageNext messagePrevious in topicNext in topicPrevious by same authorNext by same authorPrevious page (December 2005, week 1)Back to main SAS-L pageJoin or leave SAS-L (or change settings)ReplyPost a new messageSearchProportional fontNon-proportional font
Date:         Fri, 2 Dec 2005 16:50:55 +0000
Reply-To:     iw1junk@COMCAST.NET
Sender:       "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From:         Ian Whitlock <iw1junk@COMCAST.NET>
Subject:      Re: length of id


First of all the message only says that *SOME* variable in one of your 12 data sets is too wide for the assigned format. Without any further evidence I would have no reason to believe that PID is the problem.

The default for numeric variables is BEST12. so it is reasonable to think the problem is no numeric variable with the default format. The message is one of the nastiest to trace down, since there is no hint of its origin. Since it only comes from the use of the format, I would start there. What are you doing? What are the specific numeric variables used? Do any of them have a non-default format? Knowing something about the data should help you better than taking shots in the dark at a strategy. The ability to name the offending variable should be high on anyone's list of improvements to the SAS message system about possible problems.

In general I agree with Jim Groeneveld <jim1stat@YAHOO.CO.UK> advice to use character data for keys, mainly because one should standardize and not be doing arithmetic on keys, but I doubt if that advice is relevant to your problem. (Although I often introduce a numeric sequence number when a data set does not have an adequate set of keys, so I am not particularly consistent in taking my advice.)

Finally I note that the message may not even be a problem. Consider

55 data _null_ ; 56 x = 1.9e8 ; 57 put x 6. + 1 x comma12. ; 58 run ; 1.9E8 190,000,000 NOTE: At least one W.D format was too small for the number to be printed. The decimal may be shifted by the "BEST" format. NOTE: DATA statement used (Total process time): real time 0.02 seconds cpu time 0.01 seconds

The format 6. is the problem, but one could find what SAS did perfectly all right. On the other hand, I would not want such a message produced in program that I wrote or used.

Ian Whitlock ================ Date: Fri, 2 Dec 2005 10:45:03 Z Reply-To: Dirk Nachbar <Dirk.Nachbar@DWP.GSI.GOV.UK> Sender: "SAS(r) Discussion" From: Dirk Nachbar <Dirk.Nachbar@DWP.GSI.GOV.UK> Subject: length of id Content-Type: text/plain; charset="us-ascii" Dear all I am merging 12 tables by a PID. Now this variable can be as high as 1.9E8. The SAS log reports the following error. At least one W.D format was too small for the number to be printed. The decimal may be shifted by the "BEST" format. I tried to define the length of PID in the merge-data-step, but SAS won't have it.. What should I do?

Dirk Nachbar Assistant Economist Pensim2 Department for Work and Pensions Level 4, The Adelphi 1-11 John Adam St WC2N 6HT London 020 796 28531 ********************************************************************** This document is strictly confidential and is intended only for use by the addressee. If you are not the intended recipient, any disclosure, copying, distribution or other action taken in reliance of the information contained in this e-mail is strictly prohibited. Any views expressed by the sender of this message are not necessarily those of the Department for Work and Pensions. If you have received this transmission in error, please use the reply function to tell us and then permanently delete what you have received. Please note: Incoming and outgoing e-mail messages are routinely monitored for compliance with our policy on the use of electronic communications. **********************************************************************

Back to: Top of message | Previous page | Main SAS-L page