Enables you to specify a character format at run time
Category: Special
PUTC ( source , format .<, w >)
source
is the SAS expression to which you want to apply the format.
format .
is an expression that contains the character format you want to apply to source .
w
specifies a width to apply to the format.
Interaction: If you specify a width here, it overrides any width specification in the format.
If the PUTC function returns a value to a variable that has not yet been assigned a length, by default the variable length is determined by the length of the first argument.
The PUTN function enables you to specify a numeric format at run time.
The PROC FORMAT step in this example creates a format, TYPEFMT., that formats the variable values 1, 2, and 3 with the name of one of the three other formats that this step creates. These three formats output responses of "positive," "negative," and "neutral" as different words, depending on the type of question. After PROC FORMAT creates the formats, the DATA step creates a SAS data set from raw data consisting of a number identifying the type of question and a response. After reading a record, the DATA step uses the value of TYPE to create a variable, RESPFMT, that contains the value of the appropriate format for the current type of question. The DATA step also creates another variable, WORD, whose value is the appropriate word for a response. The PUTC function assigns the value of WORD based on the type of question and the appropriate format.
proc format; value typefmt 1='$groupx' 2='$groupy' 3='$groupz'; value $groupx 'positive'='agree' 'negative'='disagree' 'neutral'='notsure '; value $groupy 'positive'='accept' 'negative'='reject' 'neutral'='possible'; value $groupz 'positive'='pass ' 'negative'='fail' 'neutral'='retest'; run; data answers; length word $ 8; input type response $; respfmt = put(type, typefmt.); word = putc(response, respfmt); datalines; 1 positive 1 negative 1 neutral 2 positive 2 negative 2 neutral 3 positive 3 negative 3 neutral ;
The value of the variable WORD is agree for the first observation. The value of the variable WORD is retest for the last observation.
Functions:
'INPUT Function' on page 592
'INPUTC Function' on page 594
'INPUTN Function' on page 596
'PUT Function' on page 754,
'PUTN Function' on page 758