Functions and CALL Routines |
Returns a value using a specified format.
-
source
-
identifies the constant, variable, or expression
whose value you want to reformat. The source
argument can be character or numeric.
-
format.
-
contains the SAS format that you want applied
to the value that is specified in the source. This argument must be the name
of a format with a period and optional width and decimal specifications, not
a character constant, variable, or expression. By default, if the source is
numeric, the resulting string is right aligned, and if the source is character,
the result is left aligned. To override the default alignment, you can add
an alignment specification to a format:
-L |
left aligns the value. |
-C |
centers the value. |
-R |
right aligns the value. |
Restriction: |
The format. must be of the same type as the source, either character
or numeric. That is, if the source is character, the format name must begin
with a dollar sign, but if the source is numeric, the format name must not
begin with a dollar sign. |
If the PUT function returns a value to
a variable that has not yet been assigned a length, by default the variable
length is determined by the width of the format.
Use PUT to convert a numeric value to a character value.
The PUT function has no effect on which formats are used in PUT statements
or which formats are assigned to variables in data sets. You cannot use the
PUT function to change the type of a variable in a data set from numeric to
character.
The PUT statement and the PUT
function are similar. The PUT function returns a value using a specified format.
You must use an assignment statement to store the value in a variable. The
PUT statement writes a value to an external destination (either the SAS log
or a destination you specify).
In this example, the first statement converts the values
of CC, a numeric variable, into the four-character hexadecimal format, and
the second writes the same value that the PUT function returns.
cchex=put(cc,hex4.);
put cc hex4.;
In this example, the PUT function returns a numeric value as a character string.
The value 122591 is assigned to the CHARDATE variable. The INPUT function
returns the value of the character string as a SAS date value using a SAS
date informat. The value 11681 is stored in the SASDATE variable.
numdate=122591;
chardate=put(numdate,z6.);
sasdate=input(chardate,mmddyy6.);
Copyright © 2011 by SAS Institute Inc., Cary, NC, USA. All rights reserved.