Previous Page | Next Page

Informats

Syntax

SAS informats have the following form:

<$>informat<w>.<d>
where
$

indicates a character informat; its absence indicates a numeric informat.

informat

names the informat. The informat is a SAS informat or a user-defined informat that was previously defined with the INVALUE statement in PROC FORMAT. For more information about user-defined informats, see the FORMAT procedure in the Base SAS Procedures Guide.

w

specifies the informat width, which for most informats is the number of columns in the input data.

d

specifies an optional decimal scaling factor in the numeric informats. SAS divides the input data by 10 to the power of d.

Note:   Even though SAS can read up to 32 digits when you specify some numeric informats, numbers with more than 15 significant digits might lose precision due to the limitations of the eight-byte floating-point representation used by most computers.  [cautionend]

Informats always contain a period (.) as a part of the name. If you omit the w and the d values from the informat, SAS uses default values. If the data contain decimal points, SAS ignores the d value and reads the number of decimal places that are actually in the input data.

If the informat width is too narrow to read all the columns in the input data, you might get unexpected results. The problem frequently occurs with the date and time informats. You must adjust the width of the informat to include blanks or special characters between the day, month, year, or time. For more information about date and time values, see the discussion on SAS date and time values in SAS Language Reference: Concepts.

When a problem occurs with an informat, SAS writes a note to the SAS log and assigns a missing value to the variable. Problems occur if you use an incompatible informat, such as a numeric informat to read character data, or if you specify the width of a date and time informat that causes SAS to read a special character in the last column.

Previous Page | Next Page | Top of Page