* IML Example; * Show how to create a matrix from a dataset, multiply two matrices with proc iml, and load matrix columns into a dataset; options linesize=70 nodate pageno=1 formchar = '|----|+|---+=|-/<>*'; data matrix_data; input s t; datalines; 2 -1 0 1 7 3 ; proc iml; * Hardcode matrix A; A = { 3 0 2, 1 1 5 }; print A; * Read data from matrix_data into B; use work.matrix_data; var_names = {'s', 't'}; read all var var_names into B; close work.matrix_data; print B; * Multiply matrices A and B; C = A * B; print C; * Obtain columns of C; c1 = C[, 1]; c2 = C[, 2]; print c1 c2; * Create dataset from matrix C; create matrix_out var { c1 c2 }; append; close matrix_out; * Print dataset; proc print data=matrix_out; run; quit;