Writes variable values after the variable name and an equal sign.
| Valid in: | DATA step |
|---|---|
| Categories: | CAS |
| File-Handling | |
| Type: | Executable |
Table of Contents
moves the output pointer to a specified line or column in the output buffer.
| See | Column Pointer Controls |
|---|---|
| Line Pointer Controls |
specifies the variable whose value is written by the PUT statement in the form
variable=value
specifies a format to use when the variable values are written.
| Tip | Ensure that the format width provides enough space to write the value and any commas, dollar signs, decimal points, or other special characters that the format includes. |
|---|---|
| See | Formatting Named Output |
| Examples | This PUT statement uses the format DOLLAR7.2 to write
the value of X:
|
When X=100, the formatted value uses seven columns:
|
specifies the first column of the field where the variable name, equal sign, and value are to be written in the output line.
determines the last column of the field for the value.
| Tip | If the variable name, equal sign, and value require more space than the columns specified, PUT writes past the end column rather than truncate the value. You must leave enough space before beginning the next value. |
|---|
specifies the number of digits to the right of the decimal point in a numeric value. If you specify 0 for d or omit d, the value is written without a decimal point.
| Range | positive integer |
|---|
holds an output line for the execution of the next PUT statement even across iterations of the DATA step. These line-hold specifiers are called trailing @ and double trailing @.
| Restriction | The trailing @ or double trailing @ must be the last item in the PUT statement. |
|---|---|
| See | Using Line-Hold Specifiers |
With named output, follow the variable name with an equal sign in the PUT statement. You can use either list output, column output, or formatted output specifications to indicate how to position the variable name and values. To insert a blank space between each variable value automatically, use list output. To align the output in columns, use pointer controls or column specifications.
You can specify either a SAS format or a user-written format to control how SAS prints the variable values. The width of the format does not include the columns required by the variable name and equal sign. To align a formatted value, SAS deletes leading blanks and writes the variable value immediately after the equal sign. SAS does not align on the right side of the formatted length, as in unnamed formatted output.
For a complete description of the SAS formats, see Definition of Formats in SAS Formats and Informats: Reference.
Use named output in the PUT statement as shown here.
data _null_;
input name $ 1-18 score1 score2 score3;
put name = @20 score1= score3= ;
datalines;
Joseph 11 32 76
Mitchel 13 29 82
Sue Ellen 14 27 74
;
The program writes these lines to the SAS log:
----+----1----+----2----+----3----+----4
NAME=Joseph SCORE1=11 SCORE3=76
NAME=Mitchel SCORE1=13 SCORE3=82
NAME=Sue Ellen SCORE1=14 SCORE3=74
put item= @25 amount= dollar12.2;
When the value of ITEM is binders and the value of AMOUNT is 153.25, this output line is produced:
----+----1----+----2----+----3----+----4
ITEM=binders AMOUNT=$153.25