SAS/IML® (SAS 9.4) Features
Matrix functions
- Use matrix operations such as multiplication, direct products and factorizations.
- Apply mathematical operators and functions to each element of a matrix.
- Use multithreaded computations for large matrices.
- Find elements in a matrix that satisfy given conditions.
- Compute descriptive statistics for each column of a matrix.
- Create structured matrices, such as diagonal, banded and block diagonal.
- Reshape, transpose and concatenate matrices.
- Compute correlation and covariance matrices.
- Count, identify or remove missing values or other special values from matrices.
Control statements
- Direct the flow of execution of SAS/IML statements.
- Enable program modularization.
- Perform numerical analysis and call statistical functions.
- Find roots of polynomials and general nonlinear functions.
- Compute inverses and generalized inverses, and solve sparse systems of linear equations.
- Compute numerical integrals and derivatives; compute eigenvalues and eigenvectors.
- Perform Cholesky, singular value and complete orthogonal decompositions.
- Perform QR decomposition by Householder rotation or the Gram-Schmidt process.
- Perform discrete sequential tests.
Time series functions
- Analyze ARMA models and their generalizations.
- Simulate a univariate ARMA time series or multivariate correlated time series.
- Compute autocovariance estimates for time series.
- Perform finite Fourier transformations and inverse FFTs, Kalman filtering and wavelet analysis.
Numerical analysis functions
- Perform numerical integration.
- Use nonlinear optimization.
Optimization algorithms
- Solve linear programming and mixed-integer linear programming problems.
- Use multiple methods for constrained and unconstrained nonlinear optimization.
- Specify linear or nonlinear constraints.
- Apply genetic algorithms.
Data visualization
- Create standard ODS statistical graphics, such as histograms and scatter plots.
- Create heat maps to visualize data in matrices.
- Call ODS statistical procedures directly to create complex graphs.
Data simulation
- Generate random samples from standard univariate distributions.
- Generate random samples from standard multivariate distributions.
- Generate random permutations and combinations.
- Generate a random sample from a finite set.
Extensibility
- Define your own function modules.
- Create and share packages of functions.
- Call any SAS procedure or DATA step.
- Call R functions and packages.
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, quantile-quantile plots and mosaic plots of cross-classified data.
- Fit parametric and kernel density estimates for distributions.
- Detect outliers in contaminated Gaussian data.
Parametric & 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, discriminant analysis, factor analysis and correspondence analysis.
- Efficient handling of large data transfers between client and server:
- Parallel execution of multiple SAS/IML Studio workspaces.
- Client support for 64-bit Windows.
Integrated programming environment in SAS/IML Studio
- Write, debug and execute IMLPlus programs in an integrated development environment.
- Create customized, dynamically linked graphics.
- Develop interactive data analysis programs that use dialog boxes.