Use regression for a univariate analysis? Yes!

I’ve conducted a lot of univariate analyses in SAS, yet I’m always surprised when the best way to carry out the analysis uses a SAS regression procedure. I always think, “This is a univariate analysis! Why am I using a regression procedure? Doesn’t a regression require at least two variables?” [...]
Post a Comment

Initializing vectors by using repetition factors

The SAS/IML language has a curious syntax that enables you to specify a “repetition factor” when you initialize a vector of literal values. Essentially, the language enables you to specify the frequency of an element. For example, suppose you want to define the following vector: proc iml; x = {1 [...]
Post a Comment

Inverse hyperbolic functions in SAS

I was recently asked, “Does SAS support computing inverse hyperbolic trigonometric functions?” I was pretty sure that I had used the inverse hyperbolic trig functions in SAS, so I was surprised when I read the next sentence: “I ask because I saw a Usage Note that says these functions are [...]
Post a Comment

Computing the onset and end of daylight saving time in SAS: The EASY way!

I was looking at some SAS documentation when I saw a Base SAS function that I never knew existed. The NWKDOM function returns the date for the nth occurrence of a weekday for the specified month and year. I surely could have used that function last spring when I blogged [...]
Post a Comment

Three ways to specify colors in SAS statistical graphics procedures

What’s in a name? As Shakespeare’s Juliet said, “That which we call a rose / By any other name would smell as sweet.” A similar statement holds true for the names of colors in SAS: “Rose” by any other name would look as red! SAS enables you to specify a [...]
Post a Comment

Specify the colors of groups in SAS statistical graphics

Sometimes a graph is more interpretable if you assign specific colors to categories. For example, if you are graphing the number of Olympic medals won by various countries at the 2012 London Olympics, you might want to assign the colors gold, silver, and bronze to represent first-, second-, and third-place [...]
Post a Comment

Suppress variable labels in SAS procedures

Sometimes a small option can make a big difference. Last week I thought to myself, “I wish there were an option that prevents variable labels from appearing in a table or graph.” Well, it turns out that there is! I was using PROC MEANS to display some summary statistics, and [...]
Post a Comment

Discriminating Fisher's iris data by using the petal areas

I’ve seen analyses of Fisher’s iris data so often that sometimes I feel like I can smell the flowers’ scent. However, yesterday I stumbled upon an analysis that I hadn’t seen before. The typical analysis is shown in the documentation for the CANDISC procedure in the SAS/STAT documentation. A (canonical) [...]
Post a Comment

Using macro loops for simulation

Last week I wrote an article in which I pointed out that many SAS programmers write a simulation in SAS by writing a macro loop. This approach is extremely inefficient, so I presented a more efficient technique. Not only is the macro loop approach slow, but there are other undesirable [...]
Post a Comment

Simulation in SAS: The slow way or the BY way

Over the past few years, and especially since I posted my article on eight tips to make your simulation run faster, I have received many emails (often with attached SAS programs) from SAS users who ask for advice about how to speed up their simulation code. For this reason, I [...]
Post a Comment