SAS/IML®
Interactive matrix programming
SAS/IML software provides a powerful and flexible matrix programming language in a dynamic environment for programmers, statisticians and researchers. A new interface, SAS/IML® Studio, provides interactive programming and exploratory data analysis, as well as integration with the open source statistical software R. You can apply SAS/IML software to problems ranging from simple matrix manipulations to estimation techniques and linear programming to nonlinear optimization.
Benefits
- Program easily and efficiently, including ability to submit R code within the SAS environment.
- Create your own modules or use routines from a predefined library.
- Perform interactive exploratory analyses.
- Formulate and implement genetic algorithm optimizations.
- Take advantage of automatic memory management and matrix sizing.
- Submit R code in SAS via the SAS/IML Studio interface.
Features
- Extensive set of dynamic mathematical and matrix operators
- Control statements
- General matrix functions
- Linear algebraic and statistical functions
- Time series functions
- Numerical analysis functions
- Integration with R
Screenshots
SAS/IML Studio provides a new, dynamic, interactive interface to SAS/IML software.
More ScreenshotsEnlargeHow SAS® Is Different
- SAS/IML Studio provides a new dynamic, interactive interface for SAS/IML software, along with integration to open source R statistical software. With SAS/IML Studio, you can build on your familiarity with SAS/STAT, SAS/IML and R to write programs that explore data, fit models and relate the results to the data with linked graphics.
- SAS/IML software is a complete programming language. You can construct programs using control structures such as conditional and iterative statements, and access a wide range of built-in subroutines to make your programming even more efficient.
- The software includes built-in functions for computing determinants, eigenvalues, eigenvectors, and generalized inverses; generating design matrices and plotting data; and solving systems of linear equations and ordinary differential equations. In addition, you can compute roots of polynomials, perform numerical integration, and solve both linear and nonlinear programming problems.
Benefits
- Program easily and efficiently, including ability to submit R code within the SAS environment. Simple syntax makes it easy to translate mathematical formulas into program statements, and there are many features for arithmetic and character expressions.
- Create your own modules or use routines from a predefined library. A complete set of control statements gives you the commands necessary for execution control and program modularization. Access to a wide range of built-in subroutines makes your programming fast, easy and efficient, and you can build your own module library to extend the functionality of the software.
- Perform interactive exploratory analyses. Data analysts often begin an analysis by graphically exploring the data. Dynamically linked graphics are a valuable part of this exploration because they enable the discovery of relationships between variables and an understanding of outliers and unusual features in the data.
- Formulate and implement genetic algorithm optimizations. You have the flexibility to write your own modules to specify the objective function and genetic operators or to use standard functions and operators provided by SAS/IML.
- Take advantage of automatic memory management and matrix sizing. You do not need to declare, dimension or allocate storage for a data matrix; SAS/IML software does this automatically.
- Submit R code in SAS via the SAS/IML Studio interface. This capability enables users to experiment with new methods not yet implemented in SAS.
Features
- Extensive set of dynamic mathematical and matrix operators
-
- BY-Group processing for matrices.
- Control statements
-
- Direct the flow of execution of SAS/IML statements.
- Enable program modularization.
- General matrix functions
-
- Absolute values, exponentials, remainders and powers of matrix elements.
- Find elements in a matrix satisfying given conditions.
- Cumulative sums, horizontal direct product and trace.
- Create block diagonal, identity, diagonal and transposed matrices.
- Reshape a matrix.
- Find set difference, set union or set intersection of matrices; remove duplicates from matrices.
- Linear algebraic and statistical functions
-
- Solve an ordinary differential equation.
- Perform numerical integration.
- Compute eigenvalues and eigenvectors for symmetric and unsymmetric matrices; create orthonormal eigenvectors.
- Compute inverses, generalized inverses, Moore-Penrose inverses and determinants.
- Compute Gram-Schmidt orthonormal factorization.
- Perform Cholesky, singular value and complete orthogonal decomposition.
- Perform QR decomposition by Householder rotation or the Gram-Schmidt process.
- Solve linear programs, linear systems and systems of linear equations.
- Compute the first nonzero roots of a Bessel function of the first kind and the derivative of the Bessel function at each root.
- Perform discrete sequential tests.
- Time series functions
-
- Compute ARMA model autocovariance sequence, log likelihood and residuals.
- Simulate a univariate ARMA time series.
- Compute autocovariance estimates for time series.
- Generate a Hankel, Toeplitz or block Toeplitz matrix.
- Perform finite Fourier transformations and inverse FFTs.
- Kalman filtering.
- TIMSAC (TIMe Series Analysis and Control) routines (developed by the Institute of Statistical Mathematics, Japan).
- Numerical analysis functions
-
- Solve ordinary differential equations.
- Perform numerical integration.
- Nonlinear optimization.
- Integration with R
-
- Submit R code in SAS via the SAS/IML Studio interface
- Experiment with new methods not yet implemented in SAS, obtaining new capability at no extra cost
Screenshots
SAS/IML Studio provides a new, dynamic, interactive interface to SAS/IML software. It provides access to a wide range of graphics commands, allowing you to create customized displays and visually explore relationships in data.
System Requirements
Supported platforms
- AIX: Version 5.1 and Version 6.1 on POWER architectures
- HP-UX PA-RISC: HP-UX 11iv2 (11.23), 11iv3 (11.31)
- HP-UX Itanium: HP-UX 11iv2 (11.23), 11iv3 (11.31)
- Linux for x86 (x86-32): RHEL 4 and 5, SuSE SLES 9 and 10
- Linux for x64 (EM64T/AMD64): RHEL 4 and 5, SuSE SLES 9 and 10
- Microsoft Windows (x86-32): Windows XP Professional, Windows Vista*, Windows Server 2003 family
- Microsoft Windows on x64 (EM64T/AMD64): Windows XP Professional for x64, Windows Vista* for x64, Windows Server 2003 for x64
- Microsoft Windows (on Itanium): Windows Server 2003 for Itanium-based systems
- OpenVMS for HP Integrity Servers (Itanium): 8.3
- Solaris on SPARC: Version 9, 10
- Solaris on x64: Version 10
- z/OS: V1R7, z/OS V1R8, z/OS V1R9 and higher
* NOTE: Windows Vista Editions that are supported include Enterprise, Business and Ultimate.
Required software
- Base SAS
Please contact your SAS representative for additional details about technical requirements.
SAS/IML® Studio Technical Requirements
SAS/IML Studio runs only on Microsoft Windows and requires Base SAS®, SAS/IML® and SAS/STAT® software. R software must be installed on the same client machine as SAS/IML® Studio in order to utilize the SAS interface to R. R is not distributed with SAS/IML® Studio but may be downloaded from the Comprehensive R Archive Network website. SAS/IML® Studio is compatible with R version 2.6.1 and higher.
Ready to learn more?
Call us at 1-800-727-0025 (US and Canada) or request more information.



