Looking for new authors at SAS Global Forum

As you may know, we are expanding the SAS Press program.  Are you interested in writing a SAS book, or do you know someone who should write a book for SAS? Please let us know if you are interested--or send us your author recommendations! Here are some ways we're hoping to meet new authors at the conference:

1) If  you or the person you want to recommend is presenting, email me with the details and I’ll add it to my agenda. I have challenged myself to attend as many presentations as possible, so help me fill my agenda!  

2) Attend one of the two informal roundtable discussions that I will be leading. For a small investment of time, prospective authors will walk away with tons of information about our program and how to become a SAS author. Two times are available:

Monday, March 23, at 6 pm (during the Monday evening reception in the SAS Bookstore area)
Tuesday, March 24, at 3 pm in the SAS Bookstore in the SAS Support and Demo area.

3) Stop by the SAS Bookstore and ask for me, Julie Platt or John West. We’re always ready for spontaneous discussions.

Let me know if you have any questions. I look forward to seeing you in Washington!

Post a Comment

SAS tourism

How to Become a Top SAS Programmer

Michael Raithel and his new book visit the SAS Tokyo office

How do they spell “SAS” in Japan?  What does the Japanese version of the SAS Display Manager look like?  How is a SAS programming class conducted in Tokyo?  These may sound like pretty random questions, but I found myself wondering about them as I began preparing for my trip to run the 2014 Tokyo Marathon.  Knowing the Japanese SAS headquarters office is located in Tokyo, I decided to find out.

The ever resourceful SAS Press staff was able to introduce me to Ms. Chie Kyo, Manager of Public Relations in the Marketing Division of the SAS Tokyo office.  Chie set up an appointment for me to visit the SAS training facilities the day after the marathon.  With great attention to detail, she created an agenda for the visit and provided excellent instructions on how to find and access the SAS Institute Japan Tokyo office.

The morning after the marathon, I arrived at the impressive Mori Tower building which is in the Roppongi Hills section of Tokyo.  There, I made my way to the SAS offices on the eleventh floor.  I was dazzled by the modern, neat look of the Tokyo office with its tastefully appointed furnishings and artsy framed SAS posters on the walls.  I received a warm, professional greeting from Ms. Yuno Suzuki, the receptionist.  Yuno made a phone call and minutes later Chie arrived to greet me and usher me into a conference room.  We were soon joined by Takae Nozaki Manager, HR &Admin. Group, Human Resources, Administrations & IS Division, and Kaori Kita Manager, Field Marketing Group, Marketing Division.  The three of us had a pleasant conversation about the Tokyo SAS office which houses a SAS training center.

Then, I had an opportunity to meet Motochika Murakami Education Manager, Education Group, Customer Services Division.  Motochika was in an empty classroom filled with laptops that had SAS installed on them.  He allowed me to take SAS for a test drive on the instructor’s laptop.  It was really fun to see Windows Explorer and the SAS Display Manager in Nihongo with the Japanese character set.  I did a PROC PRINT of the SASHELP.CLASS data set just to see what the SAS log would look like in the native character set.

Next, I sat in on the first half-hour of the SAS Macro Language 1; Essentials class taught by Katsumi Yamamoto, Senior Technical Training Consultant in the Education Group.  Katsumi started the class by asking attendees to introduce themselves, stating their name, industry, SAS experience, and purpose of training.  There were nine students in the class, and not surprisingly, most of them were relatively new to SAS.  After introductions and an explanation of the layout of the training facility, Katsumi began lecturing about the SAS macro facility.

Though the class was taught in Japanese, I could follow the basic concepts being presented.  Katsumi first showed an example program that had a number of hard-coded literals such as the current date and operating system.  He was laying the groundwork for students to use SAS automatic macro variables.  Next, he provided an example of SAS code where the year “2009” was hard-coded in several DATA and PROC steps.  It was clear that he was making a case for creating a year macro variable that could be substituted throughout the program.  A third example made the case for the macro facility generating SAS code repetitively while substituting values with each iteration.  I was delighted to see that the SAS data set being used in the macro class was the Orion Star Sports SAS data set; the same one used in my SAS classes in the United States.

Chie and I left the class after half an hour to take a tour of the class-area facilities.  Besides state-of-the-art classrooms, the Tokyo training center has a nice student lounge area.  One wall of the lounge is given over to floor-to-ceiling bookcases containing all manner of SAS publications.  I was pleased to see SAS Press publications by Ron Cody, Michelle Burlew, Art Carpenter, and by Susan Slaughter and Laura Delwiche, to name a few.  There were bound conference proceedings from past SUGI, NESUG, and other US regional SAS conferences.  I was simply delighted to find a copy of the NESUG 1995 conference proceedings since I co-chaired that conference with Frank Fry back in the day.

All too soon, my visit was over.  Chie, Yuno, and I took some pictures in the SAS office lobby area and then it was time for me to go.  Chie was kind enough to walk me out of the Mori tower and provide guidance on sites that I could tour in the Roppongi Hills before heading to the airport.

I want to thank Chie Kyo, Katsumi Yamamoto, Motochika Murakami, Takae Nozaki, Kaori Kita, and Yuno Suzuki for taking time out of their busy schedules to provide me with an interesting and informative tour of the SAS Tokyo office.

How do they spell “SAS” in Japan?  Same as we do in the United States, of course!

Be sure to take a look at Michael Raithel's latest book How to Become a Top SAS Programmer.


Post a Comment

SAS author's tip: Specifying a hash iterator object

SAS Hash Object Programming Made EasyMichele Burlew is the author of several highly regarded SAS books including her most recent SAS Hash Object Programming Made Easy. This week, I've selected a short excerpt from her latest book to share with our readers.

If you like this week's free excerpt, be sure to visit Michele Burlew's author page for more information about SAS Hash Object Programming Made Easy,  as well as her many other extremely helpful titles.

The following excerpt is from SAS Press author Michele Burlew's book “SAS Hash Object Programming Made Easy” Copyright © 2012, SAS Institute Inc., Cary, North Carolina, USA. ALL RIGHTS RESERVED. (please note that results may vary depending on your version of SAS software).

Specifying a Hash Iterator Object

When you want to traverse a hash object with a hash iterator object, the first step is to define your hash object and identify key items and data items in the same way as previous examples have shown. If you want SAS to return data in order by the values of the keys, you must add the ORDERED: argument tag to the DECLARE statement and specify its values as “YES”, “ASCENDING”, or “DESCENDING”. Your code can still traverse a hash object if you do not specify the ORDERED: argument tag. However, in this situation, SAS does not retrieve key values from your hash object in either ascending or descending order.

The second action to take in creating a hash iterator object is to add a second DECLARE statement that defines the hash iterator object and associates it with your hash object. This is the only definition-type statement you need to create a hash iterator object. The only argument you supply on this second DECLARE statement is the name of the hash object that you want to traverse. You must always specify the name of the hash object that you want SAS to associate with the hash iterator object, and you must enclose that name in quotation marks.

The syntax of the DECLARE statement that defines a hash iterator object follows. The object-type keyword HITER always immediately follows the DECLARE keyword.

DECLARE HITER iterator-object-name('hash-object-name');


Post a Comment

Examining your inputs with SAS Enterprise Miner

To build accurate predictive models you need clean data. Having a good understanding of the data helps you to interpret the models correctly and enables you to make sound intelligent business decisions.

SAS Enterprise Miner can help you to achieve the twin goals of improving the quality of data and gaining a good understanding the variables. Here are a few examples of how you can examine your inputs prior to model building.

(1)    To examine the distributions of your input variables,  

  • Right click on data source
  • select Explore
  • Change Sample Method to Random
  • Set Fetch size to Max
  • Click on the “Apply” button
  • Then click on the “Plot” button
  • Select “Histogram”
  • Select “Percent” in the  “Response Statistics” box 
  • Select a variable and assign the role of “X”   
  • Click finish.
  • To plot another variable click “Actions” from the menu bar, select “Histogram” and repeat the above steps.

(2)    Sometimes a variable that is skewed can be made to be more symmetric by applying transformations as discussed in Chapter 2 of my new book Predictive Modeling with SAS Enterprise Miner: Practical Solutions for Business Applications, Second Edition.

(3)    Use Stat Explore node as described in Chapter 2 of my book. The output window shows mode for class variables and mean, Median and other statistics for interval variables by target level.

(4)    Use Decision Tree node for each input individually, or for sets of inputs to uncover patterns in the data.  See Chapter 4 of my book for a detailed explanation of the Decision Tree Node.

(5)    You can use the Replacement node to set ceilings on extreme values; use the filter node to delete observations with extreme values. See Chapter 2 of my book to see how these two nodes differ in treating the extreme values.

Learn more about Kattamuri Sarma and his new book Predictive Modeling with SAS Enterprise Miner: Practical Solutions for Business Applications, Second Edition.

Post a Comment

Spring means SAS Global Forum!

We finally seem to be moving away from a really cold winter and into spring. That means that SAS Global Forum is just around the corner. March 23-26 will find me and many of my SAS colleagues and SAS users in National Harbour, MD, just outside of Washington DC. Will you be there?

I was just reviewing the program for this year’s conference. Conference chair Marje Fecht, of Prowerk Consulting, will be heading up a very impressive conference. She and her team of content planners have put a lot of effort into creating an exciting line-up of invited and contributed papers and posters along with some really interesting keynote presenters. This team has focused on making the information relevant to what you do every day. (Speaking of Marje, she'd love to hear what you're looking forward to at SAS Global Forum. You can join her discussion here.)

In addition to having the chance to catch-up with friends from my years of being associated with SAS Global Forum, I always look forward to meeting new ones. I hope you will look me up in the Publications booth in the SAS demo area.  There you will have a chance to peruse new books published this year and to buy them at a discount. You can also meet Publications staff who are always anxious to hear how we’re doing. While in the booth, play our game to test your SAS skills. Try to get on the leader board by getting the most correct answers!

We have about thirty of our authors who will be hanging out with us in the booth. Let them talk you into becoming a SAS author….All that SAS knowledge you have needs to be shared with other SAS users, and we can help you do that. These seasoned authors can give you the scoop on what it is like to work with SAS as your publisher.

The theme of this year’s conference is “Potential of One, Power of All.”  Come join us next month at SAS Global Forum and find out for yourself how pertinent that theme really is. I hope to see you there.

Post a Comment

Bring your best book ideas to American Statistical Association Conference on Statistical Practice

Will you be attending the American Statistical Association Conference on Statistical Practice in Tampa this week? If so, we want to invite you to set aside a few minutes to visit SAS Press in the exhibit hall and bring SAS Press your best book ideas. At this conference, we’re looking forward to making some perfect matches—your expertise in statistics with our expertise in publishing statistics books. I'll be on hand to talk with you about your book ideas and help you get started with your project.

We look forward to meeting you there!

Post a Comment

SAS 9.4 Web Applications: Tuning for Performance and Scalability

Does your middle-tier environment run optimally? Have you ever wondered how you can tune your environment to run more efficiently? The SAS 9.4 Web Applications: Tuning for Performance and Scalability document, which is available for download from the SAS Product Documentation page, is here to help.

The Tuning for Performance and Scalability document will walk you through the steps to tune your environment for optimization. The document includes the tuning methodology and tuning parameters for SAS web applications, SAS Web Application Server, SAS Web Server, Java Virtual Machine, and the supported operating system environments.

The SAS 9.4 release has added functionality that enables you to automatically configure a clustered environment for the SAS web applications. As a result of this added functionality, optimizing the middle tier and SAS web applications for scalability and performance is greatly simplified. The common objective of scaling a component or system is to increase the capacity for growth, increase the speed of the component, improve the efficiency, or shift or reduce the load on the component. To find out how to do this and more, read the Tuning for Performance and Scalability guide.

Post a Comment

SAS Press authors share in the thrill of victory

Staff celebrating 2013 new books

With the 2014 Winter Olympics in full force, many of you may be spending your free time cheering on your favorite athletes and marveling at their amazing abilities. Aren’t the athletes amazing in the way they spin, twirl, and fly through carefully practiced routines? The amount of preparation, practice, and commitment that they have put into preparing for these competitions is truly inspiring!

Here at SAS, we’re admiring our SAS authors—almost 40 of whom celebrated the victory of publishing their books in 2013. We want to thank Anders Milhoj, Ann Lehman, Armistead Sapp, Barry de Ville, Bruce McCullough, Charles Chase, Chris Hemedinger, Don Henderson, Ed Stepanski, Edward Malthouse, Evan Stubbs, Gary Cokins, Goutam Chakraborty, Heath Rushing, Ian Cox, Jack Shostak, Jamie McQuiggan, Jason Burke, Kattamuri S. Sarma, Kevin D. Smith, Kirk Lafler, Larry Hatcher, Lawrence S. Maisel, Lisa Fine, Lora Cecere, Marie Gaudard, Mark Graham Brown, Michael A. Raithel, Murali Pagolu, Norm O'Rourke, Padraic Neville, Phil Simon, Renu Gehring, Rick Wicklin, Robert Davis, Robert Virgile, Ron Klimberg, Sanjay Matange, and Satish Garla for the books you published with SAS last year. Your books make a huge difference to the SAS user community, and you’re all champions to us!

Please join SAS in congratulating our SAS authors on the publication of their books! You can learn more about these authors and others by visiting our author pages.

Post a Comment

SAS author's tip: replaying using WHERE= clauses

PROC DOCUMENT by ExampleThis week's SAS tip comes from Michael Tuchman and his book PROC DOCUMENT by Example Using SAS. Michael, a senior statistician, has been using SAS since 1999. And his experience comes through in his book. It's received strong reviews including this one from SAS user Wendi Wright: "Currently, I believe PROC DOCUMENT is a highly underused procedure and after reading this book, I believe this will change. The book shows how easy and how useful the procedure really is. This manual is well written and easy to understand, and is a wonderful reference document. The SAS code in the examples is well documented, and readers will find it easy to modify the programs for their own use. This is a book that I will refer to again and again during my work."

I hope that you'll enjoy this week's free excerpt from the book.

The following excerpt is from SAS Press author Michael Tuchman's book “PROC DOCUMENT by Example Using SAS” Copyright © 2012, SAS Institute Inc., Cary, North Carolina, USA. ALL RIGHTS RESERVED. (please note that results may vary depending on your version of SAS software).

Replaying Using WHERE= Clauses

As with the LIST statement, you can use the WHERE= option when specifying document paths to subset ODS output. The syntax of the WHERE= option was discussed in Chapter 4, “Listing Documents Using the DOCUMENT Procedure.” To specify which paths are of interest, special document variables characterized by leading and trailing underscores were also listed in that chapter. You can use these WHERE= clauses to select output for the REPLAY statement. Program 5.4 shows how to combine the REPLAY and WHERE options on the pathname.

Program 5.4: Replaying Using the WHERE Option

ods html(id=serious) file='program5_4.html' style=analysis;
ods pdf file='program5_4.pdf';
ods tagsets.excelxp file='program5_4.xml';
proc document name=mylib.firstdoc(read);
replay reg / dest=tagsets.excelxp;
replay univariate(where=(_name_='Moments'))
/ dest=html;
replay univariate(where=(_path_ ? 'Height'))
/ dest=html;
replay reg(where=(sex='F')) / dest=pdf;
ods _all_ close;

Notice that there is more control over which outputs go to which destinations, compared with not having a WHERE option at all.

In Program 5.4, the output from the REG procedure is sent to the spreadsheet destination, the Moments output from the UNIVARIATE procedure is sent to the HTML destination with ID=bluish, the output for the Height variable is sent exclusively to the HTML destination with ID=serious, and the REG procedure output that is restricted to Sex=F is sent to the PDF destination. Note the use of the BY variable SEX in the WHERE option. Only a variable that is used as a BY-variable in the original analysis can be used in the WHERE option.

There is an exception to this. If the object that is being replayed is a single output object, you can use any of the variables in that output object as a variable in the WHERE= option. Program 5.8 later in this chapter demonstrates this.

Post a Comment

The importance of an outline in your book proposal

If you’ve been reading my blog posts for any length of time, you’ve no doubt you’ve seen me link to our web page about submitting a book proposal. I hope you’ve looked over it, and even book marked it. It’s a page to keep handy when the urge to write hits. Today, I want to draw your attention to a page that’s just as important.

One of the key elements of a book proposal is the outline. It gives reviewers a good sense of the material you plan to cover in your book, and the level of detail you want to include. Some reviewers start by looking at the outline when reviewing your proposal. If it’s good, they’ll move on to the questionnaire. So, I’ve written an article to help you create the strongest outline possible. There’s even a template you can follow for your own book.

When you’re ready to discuss a book idea, or your proposal material, contact me. I’m here to help you become a published SAS author!


Post a Comment