How can you change a programming trick into a programming treat? Try this algorithm: If you develop a clever snippet of code, squirrel it away. This snippet is a "trick." If you use the trick a second time, copy and modify the code. The trick has become a "treat." If
Uncategorized
Are you up to date on your hotfixes for SAS Enterprise Guide 4.1? If you're not certain of the answer, you'll find out next week when you might see this message appear: This version of SAS Enterprise Guide will expire on December 1st, 2010. If you've applied any SAS Enterprise
The SAS/IML language provides the QUAD function for evaluating one-dimensional integrals. You can also use the QUAD function to compute a double integral as an iterated integral. A One-Dimensional Integration Suppose you want to evaluate the following integral: To evaluate this integral in the SAS/IML language: Define a function module
One of the primary goals of this blog is to establish our contributors and by extension, SAS, as thought leaders in a variety of state & local government areas. It’s also a goal of the upcoming SAS Government Insights publication, which includes a thoughtful opinion piece about what it means
We've just pushed out the localized versions of the Getting Started with SAS Enterprise Guide 4.3 tutorial. This is the tutorial that you'll see when you select Help->Getting Started Tutorial from within SAS Enterprise Guide. Here is a list of the supported languages, and links to the tutorial content: English
I was recently asked how to create a tridiagonal matrix in SAS/IML software. For example, how can you easily specify the following symmetric tridiagonal matrix without typing all of the zeros? proc iml; m = {1 6 0 0 0, 6 2 7 0 0, 0 7 3 8 0,
The question came up on the SAS Enterprise Guide discussion forum: which do you prefer, List Report Wizard (PROC REPORT) or Summary Tables (PROC TABULATE)? And as with most SAS-related questions, the proper response is: "it depends." If you put these two PROCs in the ring with a Google Fight,
Facebook now uses technology to help detect instances of cyberbullying before it gets out of hand. I heard this report on CNN last week, and the Facebook spokesman described their detection techniques as "background technology that I can't really talk about." We don't know for certain what techniques Facebook employs
In a previous post, I discussed how to use the LOC function to eliminate loops over observations. Dale McLerran chimed in to remind me that another way to improve efficiency is to use subscript reduction operators. I ended my previous post by issuing a challenge: can you write an efficient
It's like I was saying earlier: when used for good, statistics can inform your sound decisions and opinions. But stats can be used to mislead, as well. LifeHacker.com offers some basic guidance on this subject. And what if you already have the numbers you want to share, but you want
I am not a statistician, but I love statistics. Statistics are facts, and when used for good, they are an important ingredient in sound decision making about almost any issue, whether it's about government policy or your personal behavior. The use of statistics has gone way beyond counting things, computing
Today is World Statistics Day, an event set up to "highlight the role of official statistics and the many achievements of the national statistical system." I want to commemorate World Statistics Day by celebrating the role of the US government in data collection and dissemination. Data analysis begins with data.
Perhaps the toughest time in anyone's life is when you have to put away a loved one because they've been possessed by the devil. Other than that, though, I've had a good week*. And my week turns even better today, as we all join hands to celebrate World Statistics Day.
Today SAS joins thousands of others across the globe to celebrate the first World Statistics Day, proclaimed by the United Nations as a way to “help strengthen the awareness and trust of the public in official statistics.” More than 85 government agencies in nearly 70 different countries around the world
The IMLPlus language has been available to SAS customers since 2002, but there are still many people who have never heard of it. What is IMLPlus? The documentation SAS/IML Studio for SAS/STAT Users says this about IMLPlus: The programming language in SAS/IML Studio, which is called IMLPlus, is an enhanced
Have you ever been stuck while trying to solve a scrambled-word puzzle? You stare and stare at the letters, but no word reveals itself? You are stumped. Stymied. I hope you didn't get stumped on the word puzzle I posted as an anniversary present for my wife. She breezed through
A few people asked me to explain the significance of the cartoon in the scrambled-word puzzle that I posted as an anniversary present for my wife. The cartoon refers to a famous experiment devised by Sir Ronald A. Fisher.
In a previous post, I discussed how to generate random permutations of N elements. But what if you want to systematically iterate through a list of ALL permutations of N elements? In the SAS DATA step you can use the ALLPERM subroutine in the SAS DATA step. For example, the
It is inspiring for me to see the determination of government employees working to provide us the level of service we have all grown accustomed to even in the midst of "The Great Recession". I don’t need to tell you that the need for government services goes up dramatically during
Today's post is a puzzle. Why? Well, my wife loves solving word puzzles, and today is our wedding anniversary. Last year, I bought her a Jumble® book. This year, I've created a one-of-a-kind scrambled word puzzle just for her. (But you can play, too!) I created this puzzle by using
Sometimes it is convenient to reshape the data in a matrix. Suppose you have a 1 x 12 matrix. This same data can fit into several matrices with different dimensions: a 2 x 6 matrix, a 3 x 4 matrix, a 4 x 3 matrix, and so on. The SHAPE function enables you to specify the number of
Yesterday, I was in the #raganSAS audience as David Pogue told me What's New and What's Next in the world of technology. David is a great presenter, and he really had the audience engaged as he talked about augmented reality, his world according to Twitter, and an iPhone app that
A little off the topic, but can anyone explain the theory of password security to me? Specifically, how does requiring me to periodically change my password improve security? Like most of you, on some of my online accounts I am reminded every few months that I must change the password.
If you're an administrator of systems that run SAS, you have probably already read up on How to Maintain Happy SAS 9 Users. If not, go read that first. Now, are you looking to squeeze the best performance out of SAS on Microsoft Windows 2008 Server? Be sure to read
My previous post on creating a random permutation started me thinking about word games. My wife loves to solve the daily Jumble® puzzle that runs in our local paper. The puzzle displays a string of letters like MLYBOS, and you attempt to unscramble the letters to make an ordinary word.
I recently read a paper that described a SAS macro to carry out a permutation test. The permutations were generated by PROC IML. (In fact, an internet search for the terms "SAS/IML" and "permutation test" gives dozens of papers in recent years.) The PROC IML code was not as efficient
A previous post described a simple algorithm for generating Fibonacci numbers. It was noted that the ratio between adjacent terms in the Fibonacci sequence approaches the "Golden Ratio," 1.61803399.... This post explains why. In a discussion with my fellow blogger, David Smith, I made the comment "any two numbers (at
Space is big. You just won't believe how vastly, hugely, mind-bogglingly big it is. I mean, you may think it's a long way down the road to the drug store, but that's just peanuts to space. - Douglas Adams, Hitchhiker's Guide to the Galaxy SAS is big. It's not quite
Often, the first step of a SAS/IML program is to use the USE, READ, and CLOSE statements to read data from a SAS data set into a vector or matrix. There are several ways to read data: Read variables into vectors of the same name. Read one or more variables
The Fall issue of Foresight is available this month, and includes a review of The BFD (the book). Here is Editor Len Tashman's preview: Books reviewed in Foresight in the past have fallen into two categories: those that serve as textbooks, largely emphasizing forecasting methods, and general-interest books, that offer