| SAS Language Reference: Dictionary |
You can specify informats in the following
ways:
The INPUT statement with an informat after a variable name is
the simplest way to read values into a variable. For example, the following
INPUT statement uses two informats:
input @15 style $3. @21 price 5.2;
The $w. character informat reads values
into the variable STYLE. The w.d numeric informat reads values into the variable PRICE.
For a complete discussion of
the INPUT statement, see INPUT.
The INPUT function reads a SAS character expression using a specified
informat. The informat determines whether the resulting value is numeric or
character. Thus, the INPUT function is useful for converting data. For example,
TempCharacter='98.6';
TemperatureNumber=input(TempCharacter,4.);
Here, the INPUT function
in combination with the w.d
informat reads the character value of TempCharacter as a numeric value and
assigns the numeric value 98.6 to
TemperatureNumber.
Use
the PUT function with a SAS format to convert numeric
values to character values. See PUT
for an example of a numeric-to-character conversion. For a complete discussion
of the INPUT function, see INPUT.
The INFORMAT statement associates an informat with a variable.
SAS uses the informat in any subsequent INPUT statement to read values into
the variable. For example, in the following statements the INFORMAT statement
associates the DATEw. informat with the variables
Birthdate and Interview:
informat Birthdate Interview date9.;
input @63 Birthdate Interview;
An informat that is associated with an INFORMAT statement
behaves like an informat that you specify with a colon (:) format modifier
in an INPUT statement. (For details about using the colon (:) modifier, see
the INPUT, List statement.) Therefore, SAS uses a modified list input to read
the variable so that
See INPUT, List
for more information on how to use modified list input to read data.
The ATTRIB statement can also associate an informat, as well
as other attributes, with one or more variables. For example, in the following
statements, the ATTRIB statement associates the DATEw.
informat with the variables Birthdate and Interview:
attrib Birthdate Interview informat=date9.;
input @63 Birthdate Interview;
See ATTRIB for more information.
When you specify an informat in an INPUT statement, SAS uses
the informat to read input data values during that DATA step. SAS, however,
does not permanently associate the informat with the variable. To permanently
associate a format with a variable, use an INFORMAT statement or an ATTRIB
statement. SAS permanently associates an informat with the variable by modifying
the descriptor information in the SAS data set.
In
addition to the informats that are supplied with base SAS software, you can
create your own informats. In base SAS software, PROC FORMAT allows you to
create your own informats and formats for both character and numeric variables.
For more information on user-defined informats, see the FORMAT procedure in
the
SAS Procedures Guide.
When you execute a SAS program that uses user-defined
informats, these informats should be available. The two ways to make these
informats available are
If you execute a program that cannot locate a user-defined
informat, the result depends on the setting of the FMTERR= system option.
If the user-defined informat is not found, then these system options produce
these results:
Although using NOFMTERR
enables SAS to process a variable,
you lose the information that the user-defined informat supplies. This option
can cause a DATA step to misread data, and it can produce incorrect results.
To avoid problems, make sure that users of your program
have access to all the user-defined informats that are used.
Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.