SAS macro errors: the answers you’re looking for

Have you ever received an error or warning in SAS macro and did not know what to do next or even where to look?  Now there is an answer! And debugging your SAS macros just got easier. All macro errors and warnings are now documented in the SAS 9.4 Macro […]

Post a Comment

Macro quoting made easy

Are there times when you need to pass special characters to a macro variable but cannot find the right technique to accomplish the task?  In this article I’ll discuss the different macro quoting functions and give a simple technique to help you determine which macro quoting function to use. Why […]

Post a Comment

Make your macro invocations data driven!

Some very common questions we receive into Technical Support are, “I need to be able to send the data for every hospital listed in my data set to a separate .csv file. How can I do that?” Or, “How can I run a PROC REPORT for each region listed in […]

Post a Comment

Keys to the kingdom—using metadata to build a database

If you routinely import data from external sources, chances are you’ve learned the value in having a systematic import process. In this post, I will begin sharing my approach of using metadata tables to guide the importing of data. tags: macro, SAS Programmers

Post a Comment

The list goes on and on -- how to get it all done!

Continuing with our stringed list theme, in this post I would like to talk about applying functions to those lists. So far we have developed quite a few tools that can manipulate lists in different ways, but what good are they if we can’t do something meaningful with the lists? […]

Post a Comment

Formatted or unformatted, that is the question

In my previous post, I began a discussion of lists by explaining that big problems can be solved by breaking the problem into smaller pieces. The solutions to those smaller problems can then be used in combination to solve other problems. In this post, I will talk about formatting and […]

Post a Comment

Tiny macros break up big problems

There are many different ways to do something; my approach is all about breaking a problem into smaller problems. I try as much as possible to stay away from developing something that can only serve a purpose in one problem. I achieve this by keeping things modular. Each tool should […]

Post a Comment

Beep, beep, beep, back it up! Archiving without copying

A basic tenet in any profession - whether you're a statistical programmer, developer or blogger - is save your work. For statisticians, saving is important, but archiving is KING! You never know when your client may want you to roll back to a previous version or when someone else may […]

Post a Comment

Macro for collecting, analyzing and reporting on clickstream data

Today, everyone from chief marketing officers to the senior vice president of sales to bloggers want to know more about the behavior of the readers and consumers who are clicking on Web pages, Internet articles and blogs.  Clickstream data is a valuable source of information about the products, services and information that resonates with […]

Post a Comment

Seven steps for avoiding (data) hangovers

In a production environment, where dozens of SAS programs are run in sequence, often monthly or quarterly, and where logs can span thousands of lines, it’s easy to overlook the small stuff that can cause data hangovers.  Recognize any of these? A temporary data set finds its way into subsequent […]

Post a Comment