Skip to main page content
U.S. flag

An official website of the United States government

Dot gov

The .gov means it’s official.
Federal government websites often end in .gov or .mil. Before sharing sensitive information, make sure you’re on a federal government site.

Https

The site is secure.
The https:// ensures that you are connecting to the official website and that any information you provide is encrypted and transmitted securely.

Access keys NCBI Homepage MyNCBI Homepage Main Content Main Navigation
Review
. 2022 Apr 27;12(5):648.
doi: 10.3390/life12050648.

The R Language: An Engine for Bioinformatics and Data Science

Affiliations
Review

The R Language: An Engine for Bioinformatics and Data Science

Federico M Giorgi et al. Life (Basel). .

Abstract

The R programming language is approaching its 30th birthday, and in the last three decades it has achieved a prominent role in statistics, bioinformatics, and data science in general. It currently ranks among the top 10 most popular languages worldwide, and its community has produced tens of thousands of extensions and packages, with scopes ranging from machine learning to transcriptome data analysis. In this review, we provide an historical chronicle of how R became what it is today, describing all its current features and capabilities. We also illustrate the major tools of R, such as the current R editors and integrated development environments (IDEs), the R Shiny web server, the R methods for machine learning, and its relationship with other programming languages. We also discuss the role of R in science in general as a driver for reproducibility. Overall, we hope to provide both a complete snapshot of R today and a practical compendium of the major features and applications of this programming language.

Keywords: CRAN; R; bioinformatics; data science; programming; statistics.

PubMed Disclaimer

Conflict of interest statement

The authors declare no conflict of interest.

Figures

Figure 1
Figure 1
Timeline of R history with selected milestones.
Figure 2
Figure 2
(A) Box plots drawn using the default R boxplot() function in original R (left), R since 4.0.0 (middle) and ggplot2 (right). (B) Density distribution plots for three distributions, combined with the results of the Shapiro–Wilk test. (C) Default R boxplot comparing two distributions and providing the output p-value of the Student’s t-test. (D) Scatter plot indicating the co-expression of two genes, and the Pearson’s correlation coefficient of the joint distribution. (E) Example of overlapping different plot types in R: box plot, beeswarm plot and violin plot (BBV Plot) for three numeric distributions (called Gene 1, Gene 2 and Gene 3).
Figure 3
Figure 3
(A) Concept diagram of how Rmarkdown can merge text and code blocks to create documents. (B) Example of an R IDE, RStudio, showing multiple elements to assist the R programmer. (C) Worldwide popularity of search terms “R”, “Python” and “Perl” in the years 2004–2021 (source: Google Trends). The topic of the search term is limited to “Programming Language”.

References

    1. Ihaka R., Gentleman R. R: A Language for Data Analysis and Graphics. J. Comput. Graph. Stat. 1996;5:299–314. doi: 10.1080/10618600.1996.10474713. - DOI
    1. Becker R.A. A Brief History of S. In: Dirschedl P., Ostermann R., editors. Computational Statistics. Physica-Verlag HD; Heidelberg, Germany: 1994. pp. 81–110. Contributions to Statistics.
    1. Chambers J.M. Programming with Data: A Guide to the S Language. Springer Science & Business Media; Berlin/Heidelberg, Germany: 1998.
    1. Becker R.A. The New S Language. CRC Press; Boca Raton, FL, USA: 2018.
    1. Ihaka R. The R Project: A Brief History and Thoughts about the Future. Univ. Auckl. 2017;4:22.

LinkOut - more resources