SAS support

7月 172014
 

When it comes to e-mail-based newsletters, I'm of two minds. On one hand, I feel like I receive enough (or maybe too much) e-mail and I'm reluctant to clog up my inbox with more stuff -- especially if it's information that's located elsewhere (such as on that big backup drive that we call "the Internet").

tipsextra_conceptBut on the other hand, I don't usually have time to go searching the Web for stuff that might someday be useful to me, or even to pay regular visits to the sources that I know will have good information (such as blogs and discussion forums). If someone collected some of the best tidbits from these sources and delivered them to me -- even in e-mail -- I think that would be useful. Do you agree?

We know from experience that SAS users love to see tips about how to do more with SAS. So we got to thinking: What if we curated an e-mail newsletter that was ALL SAS tips? Where all of the content was coming from the "hey, we bet you didn't know this" category?

We're making that happen, beginning this month. It's called SAS Tech Report: Tips Extra. It contains tips -- some from SAS staff and some from the larger SAS community -- to save you time and expand your mind. If you subscribe to the SAS Tech Report newsletter already, then do nothing -- you'll receive it automatically. If you don't yet subscribe, then visit the e-Newsletters section of www.sas.com and click the link to sign up. It's free, of course -- all you need is a SAS profile (which you probably already have if you participate in communities.sas.com or interact with SAS Technical Support).

I hope that you like the content, and that you appreciate it showing up in your inbox. And if you have feedback or ideas for topics to feature, let me know here in the comments.

tags: SAS support, SAS tips
7月 312012
 

If you need to calculate the mean, sum, standard deviation, or frequency count for a variable, you'll find it pretty easy to accomplish in SAS Enterprise Guide. The corresponding tasks in the menus have names like "Summary Statistics" or "One-way Frequencies". Obvious, right?

Often, researchers or students have a quest to calculate a more "exotic" statistic that isn't easy to find by navigating the menus. I'm not a statistician, but I do have a method for answering the question: "can I calculate <your favorite statistic> in SAS Enterprise Guide?"

Step 1. Find out how SAS supports the statistic

One of the most popular SAS notes on support.sas.com is FAStats: Frequently asked-for statistics. This note lists the statistical terms from "Alpha" to "Zero-inflated models". Most entries include a reference to a SAS procedure and option that can be used to calculate the stat. Some entries provide links to more documentation to help you with the approach, and even to more information about the theories behind the statistic.

Step 2. Find out whether SAS Enterprise Guide has a corresponding task

After you learn the name of the SAS procedure that you might use to calculate the statistic, you need to find out whether SAS Enterprise Guide has a task that supports that procedure. You can find a list of SAS tasks and associated procedures on support.sas.com.

Or, you can simply look in the task list within SAS Enterprise Guide. Select View->Task List, then change the view to show the Tasks by Name. This shows a list of all of the tasks and their associated SAS procedures. You can sort the list by clicking on the SAS Procedure column heading, which will make it easier to find whether the procedure that you need is listed.

Step 3. Explore the task to find the exact option to check

If you've identified a SAS procedure and a SAS Enterprise Guide task that supports it, then the next step is to find the exact option in the task that triggers the statistic.

For example, let's assume you're looking to calculate odds ratios using the Wald method. The FASTats note points you to a number of SAS procedures, including PROC LOGISTIC and the CLODDS= option. The SAS Enterprise Guide task list shows that LOGISTIC is supported by (surprise!) the Logistic Regression task. If you open the Logistic Regression task and hunt around for a bit, you'll find the Wald option within the Conditional odds ratios grouping on the Model: Options page.

Pro tip: The SAS Enterprise Guide help contains detailed listings of all of the supported options among all of the tasks. If you choose Help->SAS Enterprise Guide Help from the main menu, then enter "Wald" in the Search tab (note that the Index might not have it), it will lead you right to the Logistic Regression task (as well as a few others).

Step 4. If needed, find a programming example for the statistic

SAS Enterprise Guide does not offer a task for every single SAS procedure. And the tasks don't support every single procedure option. But that doesn't mean that SAS Enterprise Guide doesn't support the statistic: it simply means that you might have to write a bit of code to get to it.

In addition to the FAStats note, which will point you to the correct SAS language elements that you need for your program, the SAS samples collection might very well include an example of what you need. (If you can't find the example you need, ask your peers in the SAS Statistical Procedures forum on communities.sas.com!)

Note that some analyses are more specialized per discipline and not easily attainable by straight programming. For example, a customer recently asked about CHAID analysis in SAS Enterprise Guide. I checked FAStats and found an entry for CHAID (Chi-square Automatic Interaction Detector), with a note that it's supported by SAS Enterprise Miner. It might not have been the "yes, you can do here" answer that the customer was looking for, but at least it ended the hunt quickly.

tags: business analytics, SAS Enterprise Guide, SAS support
7月 192012
 

With the London 2012 Olympics around the corner, there are sure to be reports or rumors of performance-enhancing drug use among some athletes. It turns out that using manufactured chemicals to give yourself an edge is frowned upon in the athletic community.

However, as a SAS user you should avail yourself of any technique that provides a performance advantage, and often this comes in the form of tweaking SAS system options and optimizing the file I/O on your operating system.

These two SAS notes offer specific guidance for the best throughput and speed. These recommendations are backed by solid research from SAS tech support and R&D:

Special hat-tip to my colleague Margaret Crevar (from the SAS R&D Performance Lab) for bringing these notes to my attention. View her recent SAS Talks webinar for more performance best practices.

tags: SAS options, SAS support
7月 192012
 

With the London 2012 Olympics around the corner, there are sure to be reports or rumors of performance-enhancing drug use among some athletes. It turns out that using manufactured chemicals to give yourself an edge is frowned upon in the athletic community.

However, as a SAS user you should avail yourself of any technique that provides a performance advantage, and often this comes in the form of tweaking SAS system options and optimizing the file I/O on your operating system.

These two SAS notes offer specific guidance for the best throughput and speed. These recommendations are backed by solid research from SAS tech support and R&D:

Special hat-tip to my colleague Margaret Crevar (from the SAS R&D Performance Lab) for bringing these notes to my attention. View her recent SAS Talks webinar for more performance best practices.

tags: SAS options, SAS support
7月 182011
 
I feel privileged to have been invited back to meet with SAS customers throughout New Zealand and Australia. I also feel lucky to escape the North Carolina summer (with temperatures trending in the 90s Fahrenheit) in exchange for the "winter" weather Down Under.

For a good chunk of August, I'll travel around the region with analytics guru Evan Stubbs, meeting with SAS users and sharing what's new from SAS and how you can use the new features be more productive than ever.

I know it's not the only exciting thing happening in the region right now, but it's a Big Deal for me. If you work in Auckland, Wellington, Sydney, Canberra, Melbourne, Perth, Adelaide, or Brisbane (whew!), I hope to see you at one of these events!

7月 182011
 

I feel privileged to have been invited back to meet with SAS customers throughout New Zealand and Australia. I also feel lucky to escape the North Carolina summer (with temperatures trending in the 90s Fahrenheit) in exchange for the "winter" weather Down Under.

For a good chunk of August, I'll travel around the region with analytics guru Evan Stubbs, meeting with SAS users and sharing what's new from SAS and how you can use the new features be more productive than ever.

I know it's not the only exciting thing happening in the region right now, but it's a Big Deal for me. If you work in Auckland, Wellington, Sydney, Canberra, Melbourne, Perth, Adelaide, or Brisbane (whew!), I hope to see you at one of these events!

7月 122011
 
It seems like such a simple problem: how can you reliably compute the age of someone or something? Susan lamented the subtle issues using the YRDIF function exactly 1.0356164384 years ago.

Sure, you could write your own function for calculating such things, as I suggested 0.1753424658 years ago.

Or you could ask your colleagues in the discussion forums, as I noticed some people doing just about 3.7890410959 years ago.

Or, now that SAS 9.3 is available, you can take advantage of the new AGE basis that the YRDIF function supports. For example:


data _null_;
  x = yrdif('29JUN2010'd,today(),'AGE');
  y = yrdif('09MAY2011'd,today(),'AGE');
  z = yrdif('27SEP2007'd,today(),'AGE');
  put x= y= z=;
run;
 
Yields:

x=1.0356164384 y=0.1753424658 z=3.7890410959
 
This new feature and many more were added in direct response to customer feedback from Susan and others. And that's a practice that never gets old.
7月 122011
 

It seems like such a simple problem: how can you reliably compute the age of someone or something? Susan lamented the subtle issues using the YRDIF function exactly 1.0356164384 years ago.

Sure, you could write your own function for calculating such things, as I suggested 0.1753424658 years ago.

Or you could ask your colleagues in the discussion forums, as I noticed some people doing just about 3.7890410959 years ago.

Or, now that SAS 9.3 is available, you can take advantage of the new AGE basis that the YRDIF function supports. For example:

data _null_;
  x = yrdif('29JUN2010'd,today(),'AGE');
  y = yrdif('09MAY2011'd,today(),'AGE');
  z = yrdif('27SEP2007'd,today(),'AGE');
  put x= y= z=;
run;

Yields:

x=1.0356164384 y=0.1753424658 z=3.7890410959

This new feature and many more were added in direct response to customer feedback from Susan and others. And that's a practice that never gets old.

6月 212011
 
We sometimes take it for granted, but the concept of the "SAS library" is just about one of the most awesome aspects of The SAS System.

You can give your library a name (a library reference, or libref), tell the system how to get to your data (options on a LIBNAME statement), and then build your SAS process to reference the contents of that library. Over time, you can change where your data is: put it in the file system, share it on a remote server, load it into DBMS. It doesn't matter; as long as the contents of the library have the same table names and column names/types, your SAS programs still work.

The SAS library definition (issued via a LIBNAME statement) tells your SAS programs how to get to the physical data. But these days, many SAS processes rely increasingly on metadata. Why is that? Among the reasons:

  • Accessing the physical data is expensive, in terms of I/O processing. Metadata can tell you about available data sources without expensive queries to the database.
  • Metadata is critical for building robust ETL processes and understanding impact of changes to downstream outputs (Example: "what reports are impacted if I change the name of this column?"). (You typically use SAS Data Integration Studio for this work.)
  • Metadata is easier to "secure", allowing you to assign privileges for users and groups to see only what you want them to see about the available data sources. (You use SAS Management Console for this work.)
  • Metadata can be used to "repackage" your data sources and represent them in friendlier business views (using SAS information maps, for example) without the expense of keeping multiple copies of the same data.
As important and flexible as it seems, the use of a metadata layer can present challenges to traditional SAS users who write programs or who use interfaces such as SAS Enterprise Guide to work with the data "closer to the metal". When you access data, are you going directly to the physical data or are you navigating through a metadata layer? There are behavior differences that result from the different approaches. It's important for SAS administrators to understand these behaviors so that they can provide the correct experience for the end users that they support.

Here are some resources to help. They answer the most common questions about metadata libraries, and provide guidance for how to get the behaviors that you want:

4月 222011
 
When I encounter an ERROR, WARNING, or NOTE in my SAS log that I don't understand, my first recourse is to ask my friend (we'll call him "Google") what it could mean. I copy the entire message (or at least 5 or 6 consecutive words from it) into the search box, surrounded by quotes, and see what literal matches come up.

Not all messages indicate a problem; some are meant to be informational. Yet sometimes I need a little help to understand what that information should mean to me. (Here's an example of one that I wouldn't have guessed on my own.)

On the support.sas.com blog, Renee features the top 10 DATA step messages that prompt customers to call SAS Technical Support.

It's a guest post from Kim Wilson in SAS Technical Support, who is an expert in the area. Kim presented a paper at SAS Global Forum 2011; the paper contains even more useful details.

And now, thanks to the magic of indexed content on the support site and my friend Google (or the search box on support.sas.com), Kim's paper is one of the useful links that will pop up when you search on one of those messages.