R (programming language)

[9] The core R language is augmented by a large number of extension packages, containing reusable code, documentation, and sample data.

R was started by professors Ross Ihaka and Robert Gentleman as a programming language to teach introductory statistics at the University of Auckland.

[11] In August 1993, Ihaka and Gentleman posted a binary of R on StatLib — a data archive website.

[18] Base packages are immediately available when starting R and provide the necessary syntax and commands for programming, computing, graphics production, basic arithmetic, and statistical functionality.

[19] The Comprehensive R Archive Network (CRAN) was founded in 1997 by Kurt Hornik and Friedrich Leisch to host R's source code, executable files, documentation, and user-created packages.

[24][25][26] The Task Views on the CRAN web site list packages in fields such as causal inference, finance, genetics, high-performance computing, machine learning, medical imaging, meta-analysis, social sciences, and spatial statistics.

The Bioconductor project provides packages for genomic data analysis, complementary DNA, microarray, and high-throughput sequencing methods.

The tidyverse package bundles several subsidiary packages that provide a common interface for tasks related to accessing and processing "tidy data",[27] data contained in a two-dimensional table with a single row for each observation and a single column for each variable.

IDEs for R include R.app[29] (OSX/macOS only), Rattle GUI, R Commander, RKWard, RStudio, and Tinn-R.[30] General purpose IDEs that support R include Eclipse via the StatET plugin and Visual Studio via R Tools for Visual Studio.

General purpose programming languages that support R include Java via the Rserve socket server, and .NET C# (website).

[40] Here is an example with fewer than 10 lines that some readers may still struggle to grasp without intermediate named steps:The R language has native support for object-oriented programming.

The latter is a Common Lisp Object System (CLOS)-like system of formal classes (also derived from S) and generic methods that supports multiple dispatch and multiple inheritance[41] In the example, summary is a generic function that dispatches to different methods depending on whether its argument is a numeric vector or a "factor": The R language has built-in support for data modeling and graphics.

Install the package that provides the write.gif() function beforehand: R Source code: All R version releases from 2.14.0 onward have codenames that make reference to Peanuts comics and films.

Ross Ihaka, co-originator of R
Robert Gentleman, co-originator of R
refer to caption
Violin plot created from the R visualization package ggplot2
Diagnostic plots from plotting “model” (q.v. “plot.lm()” function). Notice the mathematical notation allowed in labels (lower left plot).
"Mandelbrot.gif" graphic created in R. (Note: Colors differ from actual output.)
A CD with autographs on it
CD of R Version 1.0.0, autographed by the core team of R, photographed R in Quebec City in 2019