Monday, July 18, 2011

Top 10 most exciting new features in SAS 9.3

The era of SAS 9.3 arrives this summer. As a keen SAS user, I look forward to trying ten new features of SAS 9.3, disclosed by its online documents and Rick’s recent blog posts(his first post and his second post).


1. PROC GROOVY
SAS 9.3 ships with PROC GROOVY, a procedure designed to run Groovy statement within SAS. Groovy is one of many Java’s derivatives and a dynamic typing language. It seems that by its ADD statement PROC GROOVY can invoke Java’s classes and libraries. If so, it may extend the application of SAS to much broader areas. I am interested in exploring the potentials of PROC GROOVY in high performance computation.
Impact: R calls C and Fortran, and SAS can call Java now. I am going to buy a book ‘Groovy in Action’ to warm up.


2. Bubble and pie charts by Graph Template Language (GTL) or PROC SGPLOT
In the past, the SG procedures didn’t count pie chart in, possibly because all statisticians despise its misleading visual effect and treat it not as a ‘statistical’ plot. It really bothered people who work with business report and can’t live without pie chart. With bubble and pie charts joining SAS9.3, ODS graphics grows more powerful. Another good news is that ODS graphics moves to SAS/BASE, which means that I can use the SG procedures or GTL at every computer installed with SAS.
Impact: Time to say good-bye to the ancient GCHART and GPLOT procedures. All of the sudden, except the map-making GMAP procedure, SAS/GRAPH becomes dispensable.


3. HTML output by default
I used to think that HTML costs much more computer resources. Glad that SAS fixed the problem. I am also curious what would happen under UNIX SAS or Mainframe SAS.
Impact: I am going to test it by running 1000 regressions. If SAS got jammed, I will switch back to listing as output.


4. Call procedures within PROC IML
I tried this impressive feature in SAS/IML studio under SAS 9.22. In SAS 9.3, PROC IML can harness all power of SAS's procedures and therefore becomes omnipotent.
Impact: With this feature, a SAS/IML programmer doesn’t need to learn Data Step at all. Codes written by Matlab or R can be smoothly migrated to SAS/IML (just treat SAS’s procedures as functions).


5. PROC COPULA
Ten years after its invention, copula becomes a must-have risk evaluation tool for a portfolio of market or credit assets. Eventually PROC COPULA has its debut, and looks very straightforward and versatile. This new procedure is going to be a big plus for SAS/ETS.
Impact: The first thing I probably will do is to download daily return data and use PROC COPULA to test copula-based VaRs.


6. PROC PLM
The first time I saw the appearance of PROC PLM was SAS 9.22. However, in SAS 9.3, the STORE statement starts to exist in every statistical procedure. Therefore PROC PLM could conveniently implement those stored models.
Impact: In the past, each procedure in SAS/STAT has distinctive way to output model and score new data set. Now PROC PLM is the universal standard to use models being built.


7. PROC FMM
SAS’s latest and finest weapon to build mixture models. It is going to be a lot of fun to fit an exotic distribution made by several uncorrelated distributions, such as normal + weibull.
Impact: Awesome! I will be able to utilize PROC FMM to tackle those infamous ‘fat tail’ distributions.


8. System option procedures OPTIONS, OPTLOAD, and OPTSAVE
I always feel headache about memorizing more than 300 SAS system options. Hope the combination of these procedures could help manage the army of options.
Impact: I would abandon my petty macro that turns on all system options before I start to code.


9. New functions
A number of new functions are added to SAS 9.3: 14 new functions for Data Step; 2 for PROC FCMP; 25 for PROC IML.
Impact:  The ever-increasing stockpile of SAS functions gets bigger!


10. Waterfall chart by Graph Template Language (GTL) or PROC SGPLOT
Waterfall chart turns super popular recently (did you not see it in any fancy business report?). Fortunately SAS 9.3 quickly adopted it.
Impact: Finally I don’t need to painfully emulate a waterfall chart by the BAND and STEP statements of PROC SGPLOT.


Overall, SAS 9.3 enjoys significant enhancement in visualization and programmability. I can’t wait to have a test-drive.

2 comments:

  1. This comment is from Sanjay Matange Sanjay.Matange@sas.com
    ------------------------------------

    In addition to the feature mentioned above (Bubble, Pie, Waterfall, etc), SAS 9.3 includes the following new graph features:

    - Cluster Grouping for all graphs with discrete axes, including Bar Chart and Box Plot.

    - BoxPlots on interval (Time) axis useful for many clinical graphs.

    - HeatMaps, Attribute Maps and Annotate for SGPLOT Procedure.

    Please see some examples here:

    https://sites.google.com/site/smatange/ods-graphics/interval-box-plot

    https://sites.google.com/site/smatange/ods-graphics/rick-s-blog-history-heatmap

    -------------------

    ReplyDelete
  2. Did you do any of the checking of HTML output computing costs yet? I'd be curious to hear what you found.

    ReplyDelete