Today is my 600th blog post for The DO Loop. I have written about many topics that are related to statistical programming, math, statistics, simulation, numerical analysis, matrix computations, and more. The right sidebar of my blog contains a tag cloud that links to many topics.
What topics do you, my reader, enjoy the most? The least? What topics would you like to see more of in the future? Here are some topics that I have written about frequently.
- Data visualization, such as the cause of airline crashes or jittering to prevent overplotting in scatter plots
- Fun math topics, such as analyzing the first 10 million digits of pi or the distribution of Pythagorean triples
- Matrix computations and numerical analysis, such as how to multiply matrices with missing values or how to convert covariance matrices to correlation matrices
- SAS programming tips such as how to count the number of missing values for each variable or how to pass parameters to SAS programs
- Simulation topics such as understanding the Monty Hall Problem or how to simulate from a logistic regression model
- Statistical topics, such as understanding kurtosis or the difference between frequencies and weights in regression analysis
- Introductory topics about programming in SAS, such as four essential functions for statistical programmers or how to choose custom bins for histograms in SAS
More than 200 of my posts have been "Getting Started" articles in which I describe some feature of SAS software or matrix programming that is useful for the novice programmer. I have to admit that it is getting harder to think of new introductory topics after blogging for so many years, so please send me any statistical programming topics that perplex you or your colleagues. (I don't blog about DATA steps techniques, PROC SQL, or macro programming, because those topics are routinely covered in SAS Global Forum papers and on the SAS Support Communities.)
In a SAS program, a DO loop is always terminated with an END statement. An END for this DO Loop will occur inevitably, but for now I will keep iterating.
Feedback is always welcome, so leave a comment. Which topics do you enjoy the most and which topics make your eyes glaze over with disinterest?
12 Comments
Rick-
Thank you, thank you, thank you! As a loyal reader of your column for a long time, I can only say, "Keep 'em coming!" If I were to make some suggestions, these are areas that I think could receive deeper illumination:
- Extreme value modeling, e.g., GEVs, POTs, block maxima, rank order statistics, the nature of random cumulants, and so on
- Related topics include understanding power law distributions with infinite moments, tail (Pareto) behavior, black swans
- Would it make sense for you to tag team with people like Paul Allison, for instance, and cover topics such as survival analysis, the challenges and pitfalls of OLS vs maximum likelihood estimation, pooled time series modeling, etc.
- What about information theoretic approaches to analysis, e.g., Kolmogorov complexity, minimum description length, permutation distribution clustering, data smashing (yes, there is a arxiv paper out there with that title), and so on?
Thank you again.
You must think that I am smarter than I really am! :-) Thanks for the many suggestions. There is so much to learn!
Congrats Rick! That's quite an accomplishment, and thanks for this blog.
I don't know I have a favorite subject, but the biggest impact your blog has had on me is that after seeing so many examples of statistical graphics here, and thinking "wow, that code looks so *clear*" I was finally motivated to try learning SG and GTL a couple years back. And my graphical life has become much richer (and easier) because of that. (Supported of course by blogs and books by other notable SAS graphics specialists: Kuhfeld, Matange, Heath, Allison...)
So thanks again!
Grateful for all the wisdom you share here and in our communities, Rick!
Congratulations Rick on sharing your knowledge (and the fun) in so many posts over the years. I'd be curious to see some analysis on your 600 blog posts. How long has the DO loop been running? ;-) What day of the week do you tend to post and is there a correlation between the day and how many shares, comments etc
Thanks for the posts and keep up the variety!
Cheers,
Michelle
My first post was Sept 2010. An avid reader did a frequency analysis of my first two years; see the link at <a href="http://blogs.sas.com/content/iml/2011/07/19/how-i-know-when-to-blog.html"this article. Then to celebrate my 200th post, another reader did a more complete analysis on frequency and topics, including a word cloud of the popular words in my blogs.
Oh wonderful!
Thanks for drip-feeding me with ideas for using IML instead of SQL and the DATA step. With the amount of memory we usually have, IML is applicable to many problems which are not "classical" matrix maths.
Does the loop really have to end?
/* Had you considered: */
DO WHILE (ideas > 0);
SHOW MEMORY;
END;
/* Or perhaps: */
DO UNTIL (inspiration = 0);
PRINT thoughts;
END;
Death and taxes, Peter. But currently ideas>0 && spirit=willing.
Hey Rick, every day more impressive! How do we go about inserting mathematical functions like this into sas? Sum(i in 1 to n-2) ([i]* Floor (n/[i]) where n is just the natural numbers.
I just want to output two columns, one for the natural numbers and one for out come of the summation above.
Here's one way, using PROC OPTMODEL in SAS/OR:
proc optmodel;
set NSET = 1..10;
num s {n in NSET} = sum {i in 1..n-2} i*floor(n/i);
print s;
quit;
See how to sum a finite series in SAS.