| Date: | Tue, 14 Jan 2003 21:33:14 -0500 |
| Reply-To: | Howard_Schreier@ITA.DOC.GOV |
| Sender: | "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU> |
| From: | Howard_Schreier@ITA.DOC.GOV |
| Subject: | Re: assigning values according to conditions set in a table |
|---|
Thanks, Mike. I remembered hearing about the concept, but I could not
remember that it was implemented as a function, let alone the name of the
function. So I just used arbitrary but presumably safe constants.
So make it
if losize=0 then losize = -constant('small');
if hisize=. then hisize = constant('big');
Note the more important correction to my erlier code. The zero is replaced
with a tiny *negative* value.
On Tue, 14 Jan 2003 17:37:40 -0500, Mike Rhoads <RHOADSM1@WESTAT.COM> wrote:
>Howard Schreier wrote (in very small part):
>...
> if losize=0 then losize = 1e-9;
> if hisize=. then hisize = 1e50;
>...
><end quote>
>
>Not that it will make any practical difference to the solution of this
>problem, but it does provide a chance to point out the relatively new
>CONSTANT function (he said oxymoronically), which returns a variety of
>useful mathematical or machine-specific numeric constant values, depending
>on the character string passed to it. Of particular importance here are
>CONSTANT('BIG'), which "returns the largest double-precision floating point
>number (8-bytes) that is representable on your computer," and
>CONSTANT('SMALL'), which "returns the smallest double-precision floating
>point number (8-bytes) that is representable on your computer."
>
>More info is available from the SAS V8 Language Reference Dictionary, which
>is the source of the quotes above.
>
>Mike Rhoads
>Westat
>RhoadsM1@Westat.com
|