Screenshot of SAS/IML Software interface for statistical programming on a laptop screen


An interactive statistical programming language for innovative, custom analyses

Easily translate mathematical formulas into innovative programs for data analysis, optimization, matrix computations and more. Understand relationships in complex data using exploratory data analysis. SAS/IML software includes hundreds of functions for implementing specialized analyses and algorithms, and lets you submit R code from within SAS®.


Program easily and efficiently.

Simple syntax and an extensive function library make it easy to translate mathematical formulas into statistical programming statements. You can implement custom analyses for a variety of applications and even build your own module library. Share your programs and libraries by writing packages, and download programs written by others.

Perform interactive exploratory analyses.

Graphically explore data to spot hidden patterns, uncover relationships among variables, understand outliers and identify unusual features in the data. Dynamically linked graphics enable you to select observations in one graph and see those same observations highlighted in all other views of the data.

Optimize, simulate and solve.

Find optimum values for objective functions, subject to constraints. Simulate data, solve linear systems and perform matrix computations. And there's no need to declare or allocate storage for a data matrix, because SAS/IML software does this automatically.

Call new methods in SAS.

Easily pass parameters from SAS to R. This enables you to communicate options, such as analysis variable names. You can also easily transfer data in both directions. You can do this multiple times within your program, with complete control over the sequence of transfers. And because SAS/IML doesn't use CSV files, data transfer is faster.



Screenshot of SAS/IML Studio showing integration with R
  • Matrix computations. Supports matrix operations, solving linear systems and matrix decompositions. 
  • Data processing. Lets you read observations from a SAS data set into a matrix.
  • Control statements. Provides commands for execution control and program modularization.
  • Modules and subroutines. Enables you to write your own functions and routines, and store them as modules in libraries.
  • Numerical analysis and statistical functions. Includes built-in functions for numerical linear algebra, including determinants, eigenvalues and singular values.
  • Time series functions. Contains collections of routines that analyze and forecast univariate and multivariate time series.
  • Optimization algorithms. Lets you define nonlinear objective functions and use optimization algorithms to find optimal solutions, subject to parameter constraints.
  • Data simulation. Generates random samples from standard univariate and multivariate probability distributions.
  • Extensibility. Lets you call any SAS procedure or macro, call R functions and packages, and easily transfer data between SAS and R.
  • Integrated programming environment – SAS/IML® Studio. Provides an interactive interface for trying out new statistical programming methods.

Recommended Resources

Looking for information on how to buy?

Back to Top