New Year’s resolution: schedule SAS tasks and your success with SAS

Do any of your New Year’s resolutions include the goal to become a more productive SAS user? Whether you’re building models or reports using SAS or you’re using SAS to effectively manage your data, you likely have a goal to be as productive as possible with your SAS usage in […]

Post a Comment

Quote confusion: How do quotes and macro work together?

The English language, a mishmash of words from many tongues and with rules that aren’t always consistent, sometimes causes people to stumble when writing quotes. There are numerous humorous websites with examples of incorrectly-used quotes on signs saying things like “Sandwiches Prepared ‘Fresh’,” or “Help ‘Wanted’ – Please ‘inquire’ within”. […]

Post a Comment

Top 3 stocking stuffers for coders

Last Christmas I decided to knit a scarf while at a concert in the Bahamas.  A little boy and his sister sitting in front of me watched me very intently. Their eyes grew bigger and bigger as the scarf grew longer and longer. Finally the little boy couldn’t take it […]

Post a Comment

Ensuring that key variables are numeric not character

One of the frustrating outcomes of the data import process is when a variable that you need to be numeric is imported as character. This often happens because the column of data contains non-numeric data, for example, where blanks in a database are exported as “NULL” instead of a true […]

Post a Comment

Explaining statistical methods to the terrified & disinterested: A focus on metaphors

Many readers in applied areas (business, health, psychology & sociology, education, and several others) are reading statistics texts under duress for a course or project, and are in truth somewhere between disinterested and terrified. In my new SAS Press book Business Statistics Made Easy in SAS® I knew that I […]

Post a Comment

You’re not using PROC REPORT?

As I visit my clients, it sometimes surprises me when they avoid the use of PROC REPORT.  “It’s too different”.  Even those that do use it, often fail to take advantage of the procedure’s power by ignoring the compute block.  Yes this procedure is different from any other. Yes using […]

Post a Comment

Random Sampling: What's Efficient?

Suppose you wish to select a random sample from a large SAS dataset.  No problem. The PROC SURVEYSELECT step below randomly selects a 2 percent sample: proc surveyselect data=large out=sample method=srs /* simple random sample */ n=1000000; /* sample size */ run; Do you have a SAS/STAT license?   If not, […]

Post a Comment

What’s wrong with this SAS program?

I think everyone can agree that being able to debug programs is an important skill for SAS programmers. That’s why Susan Slaughter and I devoted a whole chapter to it in The Little SAS® Book. I don’t know about you, but I think figuring out what’s wrong with my program […]

Post a Comment

Reading Hierarchical Data - Part 3

This post is the third and final in a series that illustrates three different solutions to "flattening" hierarchical data.  Don't forget to catch up with Part 1 and Part 2. Solution 2, from my previous post, created one observation per header record, with detail data in a wide format, like […]

Post a Comment

Reading hierarchical data - Part 2

This post is the second in a series that illustrates three different solutions to "flattening" hierarchical data. Solution 1, from my previous post, created one observation per header record, summarizing the detail data with a COUNT variable, like this: Summary Approach: One observation per header record   Obs Family Count […]

Post a Comment