The DO Loop
Statistical programming in SAS with an emphasis on SAS/IML programs
There are many ways to visualize the distribution of univariate data: histograms, kernel density estimates, box plots, and more. Visualizing a distribution leads to better insights than merely displaying statistics such as the sample mean, standard deviation, and quantiles. In fact, there are many well-known examples of data sets that
In 2025, I wrote about 60 articles for The DO Loop blog. My most popular articles were about SAS programming, data visualization, and statistics. This blog post lists some of the most popular articles from 2025. Read on for the Reader's Choice Awards in various categories! SAS Programming The following
Rockin' around the Christmas tree, Have a happy holiday – Brenda Lee An internet search for "How many lights do I need for my Christmas tree," returns many opinions. A popular answer is that you need "one strand of lights for each foot of your tree." Another common answer is
In univariate data analysis, the median is often used as an alternative to the mean because the mean is sensitive to outliers in the data, whereas the median is a robust statistic. For higher-dimensional data, the mean and the centroid are both used to represent the "center" of a cloud
Recently, a colleague struggled to find the source of a run-time error happening somewhere within a very large library of SAS IML function modules. Since the error happens at run time, I told my colleague about how to find the location of a run time error by reading the traceback
In some applications, it is useful to permute the rows or the columns of a matrix. A previous article discusses how random permutation of columns (within each row) are useful in constructing permutation tests. This article shows a simpler situation: Permuting the rows of a matrix to change their order.