Introduction to SAS/IML Software


SAS/IML software gives you access to a powerful and flexible programming language (Interactive Matrix Language) in a dynamic, interactive environment. The fundamental object of the language is a data matrix. You can use SAS/IML software interactively (at the statement level) to see results immediately, or you can store statements in a module and execute them later. The programming is dynamic because necessary activities such as memory allocation and dimensioning of matrices are performed automatically.

SAS/IML software is powerful. You can access built-in operators and call routines to perform complex tasks such as matrix inversion or eigenvector generation. You can define your own functions and subroutines by using SAS/IML modules. You can perform operations on a single value or take advantage of matrix operators to perform operations on an entire data matrix. For example, the following statement can be used to add 1 to a single value X, or to add 1 to all elements of a matrix x:


You have access to a wide selection of data management commands. You can read, create, and update SAS data sets from inside SAS/IML software without ever using the DATA step. For example, as the following statement shows, it is easy to read a SAS data set to get phone numbers for all individuals whose last name begins with "Smith":

    read all var{phone} where(lastname=:"Smith");
The result is PHONE, a matrix of phone numbers.

Previous Page | Next Page | Top of Page