R is a free software environment for statistical computing and graphics.

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.

lightbulb_outline View ideas list


  • r-project
  • c/c++
  • fortran
  • javascript


email Mailing list
mail_outline Contact email

The R Project for Statistical Computing 2021 Projects

  • DhairyaJain
    Add Robust Betas to Performance Analytics
    Robust statistics are useful in finance since all classical estimates are vulnerable to extreme distortion by outliers. Because financial data has...
  • Mayur Shende
    Automated (AutoML) tool to clean univariate time series at microscales.
    The goal of this coding project is to develop a new R package, named 'cleanTS'. The expected tasks for this project are as follows: to understand...
  • Diego E. Jiménez Urgell
    Binary Segmentation Package
    When dealing with time series, sometimes the trend in a signal seems to suddenly change at certain points. In many disciplines it is important to...
  • Piyush_Kumar
    bugRzilla: Helping submitting issues to R
    The idea of this project is to make enhancements for making it easier to review issues and submit new high-quality issues and adding functions to run...
  • Kushagra Gupta 99
    Critical efficiency improvements of mcmcse
    The package mcmcse is the leading package for estimating Monte Carlo standard errors for Markov chain Monte Carlo and reliable calculation of...
  • Minshuo Chen
    Efficient and Scalable LP-based Multi-Stage Decision Making in R
    Multi-stage decision-making problems widely appear and pose unique challenges in various real-world applications, e.g., robot control, game play, and...
  • Martynas Jočys
    Evolving bdchecks: a biodiversity data quality checks framework
    bdchecks may centralize available data checks, facilitate further development of novel data checks, improve user experience, and engage domain...
  • Guanglin Huang
    Factor analysis based on higher-order moments
    The "hofa" package for factor selection and estimation based on higher order moments. The aim of my GSOC project is to turn this package into a go-to...
  • Siyi Wei
    Fairness extension for mlr3
    The prior goal of this project is to implement a new fairness package that is well integrated into the mlr3 ecosystem. This new package could be used...
  • Ajay-1
    gghexbin: An R package to enable the creation of high quality hexagonally binned graphs that can exploit all of ggplot2’s functionality
    Hexagonal binning allows large datasets to be visualized and prevents overplotting of data, where points overlap and turn into a solid mass and...
  • Rahul Saxena
    GSoC 2021 Proposal Productionizing bddashboard
    This proposal details how I will be dealing with the project named Productionizing bddashboard . The main aim of my project is to create a testing...
  • Arkajyoti Bhattacharjee
    Improvements to nls()
    This project aims at providing documentation and possible patches to incorporate improvements in nls(), including better diagnostics to assist users...
  • Anirban Chetia
    Improvements to the directlabels package
    directlabels is an R package for adding intuitive text labels to plots, typically in order to replace confusing legends in lattice and ggplot2. This...
  • Tejasvi Gupta
    Interactive Graphics for ChemoSpec
    ChemoSpec is an R package for analyzing spectral data that arises from chemical and physical processes. ChemoSpec uses base graphics with one...
  • Rishi R
    Machine Learning for Macro Diffusion Indexes
    The Project Machine Learning for Macro Diffusion Indexes aims on creating series of potentially useful diffusion indexes and the data that may be...
  • Angelina Panagopoulou
    matrixStats: Consistent Support for Names Attributes
    The goal of this project is to make matrixStats functions handle names in the same manner as the base R functions. The methods of handling names...
  • João Vitor F. Cavalcante
    R Community Explorer - Exploration of the R community on Twitter
    Expanding on ideas developed during previous iterations of R Community Explorer (https://github.com/benubah/r-community-explorer), which was...
  • Meet Bhatnagar
    R Conference Events Explorer
    The idea behind this project is to add new features and functionality that complement the R Calendar of R Community Explorer. This project presently...
  • Ilya Zarubin
    RcppSMC - support for modern Monte Carlo methods
    Sequential Monte Carlo (SMC) methods are a general class of Monte Carlo procedures for sampling from sequences of probability distributions. Basic...
  • Mark Nawar
    re2r back on CRAN
    re2r is a great R package that was rejected from CRAN , the goal of this project is to solve all the warnings that led to it being rejected and...
  • Sang Truong
    Refactoring of hyperSpec R Package
    The hyperSpec package allows R users to analyze spectroscopic data. Operations include importing spectroscopic data, plotting, pre-processing, and...