Products & Solutions / Interactive Matrix Programming

SAS/IML®

Interactive matrix programming with integration to R

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. 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.
  • 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 within the SAS environment.

Read more

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
  • Interactive data analysis with SAS/IML® Studio
  • Integrated programming environment

Read more

Screenshot

SAS/IML Studio provides a dynamic, interactive interface to SAS/IML software.


Screenshots

How SAS® Is Different

  • SAS/IML Studio provides a 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. 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 within the SAS environment. Using the SAS/IML interface or the IML server language (PROC IML) on Windows and Linux servers, users can apply new methods not yet implemented in SAS.

Features

Extensive set of dynamic mathematical and matrix operators
  • Provides BY-Group processing for matrices.
Control statements
  • Direct the flow of execution of SAS/IML statements.
  • Enable program modularization.
General matrix functions
  • Provides absolute values, exponentials, remainders and powers of matrix elements.
  • Finds elements in a matrix satisfying given conditions.
  • Provides cumulative sums, horizontal direct product and trace.
  • Lets you create block diagonal, identity, diagonal and transposed matrices.
  • Lets you reshape a matrix.
  • Finds 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 nonsymmetric 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.
  • Provides support for sampling and simulation.
  • Compute matrix and vector norms and distances matrices.
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.
  • Perform Kalman filtering.
  • Use TIMSAC (TIMe Series Analysis and Control) routines (developed by the Institute of Statistical Mathematics, Japan).
Numerical analysis functions
  • Perform numerical integration.
  • Use nonlinear optimization.
Interactive data analysis with SAS/IML® Studio
  • Data exploration:
    • Identify observations in plots.
    • Select observations in linked data tables and graphics.
    • Exclude observations from graphs and analyses.
    • Search, sort, subset and extract data.
    • Transform variables.
  • Distribution analysis:
    • Compute descriptive statistics.
    • Create quantile-quantile plots.
    • Create mosaic plots of cross-classified data.
    • Fit parametric and kernel density estimates for distributions.
    • Detect outliers in contaminated Gaussian data.
  • Parametric and nonparametric regression:
    • Fit general linear models, logistic regression models and robust regression models.
    • Smooth two-dimensional data by using polynomials, loess curves and thin-plate splines.
    • Create residual and influence diagnostic plots.
    • Include classification effects in logistic and generalized linear models.
  • Multivariate analysis:
    • Create correlation matrices and scatter plot matrices with confidence ellipses.
    • Perform principal components analysis.
    • Perform discriminant analysis.
    • Perform factor analysis.
    • Perform correspondence analysis.
  • Efficient handling of large data transfers between client and server:
    • Provides parallel execution of multiple SAS/IML Studio workspaces.
    • Provides client support for 64-bit Windows.
Integrated programming environment
  • Write, debug and execute IMLPlus programs in an integrated development environment.
  • Execute SAS procedures or DATA step code from within your IMLPlus program.
  • Call SAS procedures as functions.
  • Create customized, dynamically linked graphics.
  • Develop interactive data analysis programs that use dialog boxes.
  • Call functions from libraries written in C/C++, FORTRAN and Java.
  • Provides seamless integration between intensive computing and interactive data analysis.
  • Provides high-speed data transport between client and server.
  • Uses multithreaded workspace.
  • Provides multithreaded matrix calculations.
  • Quickly and easily apply methods in R while working in SAS, enabling you to obtain new capabilities at no extra cost.

Screenshots

Screenshot
SAS/IML Studio provides a dynamic, interactive interface to SAS/IML software.

SAS/IML Studio provides a 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.

View Screenshot

Screenshot
SAS/IML Studio provides integration with open source statistical software R.

SAS/IML Studio provides integration with open source statistical software R.

View Screenshot

Screenshot
SAS/IML Studio’s integration with R makes it easy to apply methods in R while working in SAS.

SAS/IML Studio’s integration with R makes it easy to apply methods in R while working in SAS.

View Screenshot

System Requirements

Host Platforms/Server Tier
  • HP/UX on Itanium: 11iv3 (11.31)
  • IBM AIX R64 on POWER architecture 7.1
  • IBM z/OS: V1R11 and higher
  • Linux x64 (64-bit): Novell SuSE 11 SP1; Red Hat Enterprise Linux 6.1; Oracle Linux 6.1
  • Microsoft Windows on x64 (64-bit):
    Desktop: Windows 7* x64 SP1; Windows 8** x64
    Server: Windows Server 2008 x64 SP2 Family; Windows Server 2008 R2 SP1 Family; Windows Server 2012 Family
  • Solaris on SPARC: Version 10 Update 9
  • Solaris on x64 (x64-86): Version 10 Update 9; Version 11
Required Software
  • Base SAS®
SAS/IML® Studio Technical Requirements
  • SAS/IML Studio runs only on Microsoft Windows.
  • SAS/IML Studio requires Base SAS, SAS/IML and SAS/STAT® software.
  • R software must be installed on the same client machine as SAS/IML Studio to use 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.

* NOTE: Windows 7 supported editions are: Professional, Ultimate and Enterprise.
** NOTE: Supported editions include: Windows 8, Windows 8 Pro, Windows 8 Enterprise.

Ready to learn more?

Call us at 1-800-727-0025 (US and Canada) or request more information.