The DO Loop
Statistical programming in SAS with an emphasis on SAS/IML programs![Local functions (not!) in the SAS/IML language](https://blogs.sas.com/content/iml/files/2014/04/t_localmodules.png)
I have previously written about the scope of local and global variables in the SAS/IML language. You might wonder whether SAS/IML modules can also have local scope. The answer is no. All SAS/IML modules are known globally and can be called by any other modules. Some object-oriented programming languages support
![Summary of new features in SAS/IML 12.1](https://blogs.sas.com/content/iml/files/2017/02/AdvancedAnalytics-4.png)
I enjoy blogging about new functionality in the SAS/IML language because I can go into more depth and provide more complicated examples than the SAS/IML documentation. Today's article is a summary of all of my posts about features that were added to SAS/IML 12.1, which shipped in August 2012 as
![The Hilbert matrix: A vectorized construction](https://blogs.sas.com/content/iml/files/2014/04/hilbertmatrix.png)
The Hilbert matrix is the most famous ill-conditioned matrix in numerical linear algebra. It is often used in matrix computations to illustrate problems that arise when you compute with ill-conditioned matrices. The Hilbert matrix is symmetric and positive definite, properties that are often associated with "nice" and "tame" matrices. The
![A different way to interpret the negative binomial distribution](https://blogs.sas.com/content/iml/files/2014/04/negbin.png)
While at SAS Global Forum 2014 I attended a talk by Jorge G. Morel on the analysis of data with overdispersion. (His slides are available, along with a video of his presentation.) The Wikipedia defines overdispersion as "greater variability than expected from a simple model." For count data, the "simple
![SAS/IML available to all students through SAS Analytics U](https://blogs.sas.com/content/iml/files/2017/02/AdvancedAnalytics-3.png)
When spontaneous applause broke out during Dr. Jim Goodnight's presentation at the opening session of SAS Global Forum 2014, I was one of the people cheering the loudest. The SAS CEO had just announced free software for students and professors at universities around the world. The SAS University Edition will
![Define functions with optional parameters in SAS/IML](https://blogs.sas.com/content/iml/files/2014/03/optionalparams.png)
Last month I blogged about defining SAS/IML functions that have default parameter values. This language feature, which was introduced in SAS/IML 12.1, enables you to skip arguments when you call a user-defined function. The same technique enables you to define optional parameters. Inside the function, you can determine whether the