R is a language and environment for statistical computing and graphics. It is a GNU project which is similar to the S language and environment which was developed at Bell Laboratories (formerly AT&T, now Lucent Technologies) by John Chambers and colleagues. R can be considered as a different implementation of S. There are some important differences, but much code written for S runs unaltered under R.

R provides a wide variety of statistical (linear and nonlinear modelling, classical statistical tests, time-series analysis, classification, clustering, ...) and graphical techniques, and is highly extensible. The S language is often the vehicle of choice for research in statistical methodology, and R provides an Open Source route to participation in that activity.

One of R's strengths is the ease with which well-designed publication-quality plots can be produced, including mathematical symbols and formulae where needed. Great care has been taken over the defaults for the minor design choices in graphics, but the user retains full control.

R is an integrated suite of software facilities for data manipulation, calculation and graphical display. It includes

- an effective data handling and storage facility,
- a suite of operators for calculations on arrays, in particular matrices,
- a large, coherent, integrated collection of intermediate tools for data analysis,
- graphical facilities for data analysis and display either on-screen or on hardcopy, and
- a well-developed, simple and effective programming language which includes conditionals, loops, user-defined recursive functions and input and output facilities.

The term "environment" is intended to characterize it as a fully planned and coherent system, rather than an incremental accretion of very specific and inflexible tools, as is frequently the case with other data analysis software.

R, like S, is designed around a true computer language, and it allows users to add additional functionality by defining new functions. Much of the system is itself written in the R dialect of S, which makes it easy for users to follow the algorithmic choices made. For computationally-intensive tasks, C, C++ and Fortran code can be linked and called at run time. Advanced users can write C code to manipulate R objects directly.

Many users think of R as a statistics system. We prefer to think of
it of an environment within which statistical techniques are
implemented. R can be extended (easily) via *packages*. There
are about eight packages supplied with the R distribution and many
more are available through the CRAN family of Internet sites covering
a very wide range of modern statistics.

R has its own LaTeX-like documentation format, which is used to supply comprehensive documentation, both on-line in a number of formats and in hardcopy.

R can be found on `http://cran.r-project.org`,
the master site of comprehensive R archive network, or at one of its
mirrors.

It is available as source code and as binary distributions for a number of GNU/Linux and Unix platforms, and for versions of Microsoft Windows that support long file names.

R comes with an FAQ list, and an introduction to the language and how to use R for doing statistical analysis and graphics in PDF and other formats.

Further manuals and documentation (including in French and Spanish) are discussed in the FAQ and in the documentation section on CRAN.

Return to GNU's home page.

Please send FSF & GNU inquiries & questions to
*gnu@gnu.org*.
There are also other ways to
contact the FSF.

Please send comments on these web pages to
*webmasters@gnu.org*,
send other questions to
*gnu@gnu.org*.

Copyright (C) 1999 Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.

Last modified: 2000 May 18 by Brian Ripley