I have some experience on Visual Basic, C and Java in the past when I haven't really entered the field of statistics. I still remember I made a program by Visual Basic for a little sister to help her practise basic operations in her arithmetic when I didn't know anything about statistics as an undergraduate; later when I learned some knowledge about descriptive statistics, I also made a little program using VB to generate boxplots as there's no boxplot in MS Office Excel's graphics gallery.

Now I have almost given up all other programs for computing (and graphics): R has been my favorite choice. The computing power is no longer restricted to basic arithmetic operations such as +, -, * and / (e.g. compute the singular-value decomposition of a rectangular matrix, or find the OLS solution for a linear regression), and I don't need to sort a batch of numbers and find quartiles and draw lines / rectangles any more (there's already a perfect *boxplot()* in R).

R is based on S, a language with a simple goal "To turn ideas into software, quickly and faithfully". The reason why I especially mentioned S here is that it is *the first statistical system* to receive the Software System Award, the top software award from the ACM.

I know many people want to know where to begin after recognizing the excellence of R language, and my own suggestions are:

- Play with Appendix A of the R manual "An Introduction to R".
- Spend
*enough*time to learn the data structure of R, including vector, matrix, data frame, factor, list, array, ts, etc. You will benefit from these efforts later (it will also help you understand R as an OO language). - For graphics, I think the easiest way of learning is just to read the HTML help of
*all*the functions in package graphics; these help files are clear enough for novices. Actually this is what I did in the past to learn traditional R graphics :) - Read a couple of books on both R (or S) and statistics to consolidate your ability in statistical anaylsis using R. For example, "
*Modern Applied Statistics with S*", "*A Handbook of Statistical Analyses Using R*", etc. Or some of those contributed documentations are also OK for novices.

I'm currently only a novice on Linux, and I can merely install R on Ubuntu with the help of Synaptic (but I succeeded once in installing from source, difficult as it was). For Windows users, it's extremely easy to install R into their PCs: just download the setup program from one of the CRAN mirrors, double click and follow the conventional instructions to finish the installation.

I've made a special page for Windows users who want to build R from source; you may read it if you are interested.

When I began to build pages for this web site, I planned to write some basic knowledge of R, however, after I read many online materials, I changed my mind because there are already enough tutorials for R novices. I think it would be better to introduce these resources rather than write something by myself again.

There are also hundreds of official and non-official documentations for R now, which makes us really puzzled. Thus I'll give some simple comments and notes to documentations which I've ever read.

In fact I have rarely finished reading ANY documentations -- I just read help files for R functions instead (almost every day because I have a poor memory...). I never recommend anybody to read source codes, but I do recommend everybody to read help files. You may read the imcomplete guide for R documentations here.

In fact, I'd like to write only one character here, i.e. "?"

Always type the almighty "?" to know the answer: ?lm ?glm ?boxplot ?abline ...

The last point I want to emphasize here is the references in the help files; there are quite useful for you to understand the statistical theories behind the functions.