Awesome R
A curated list of awesome R packages and tools. Inspired by 62180β
14467π΄
awesome-machine-learning).
for 657β
228π΄
Top 50 CRAN downloaded packages or repos with 400+
- Awesome R
- 2023
- 2020
- 2019
- 2018
- Integrated Development Environments
- Syntax
- Data Manipulation
- Graphic Displays
- Html Widgets
- Reproducible Research
- Web Technologies and Services
- Parallel Computing
- High Performance
- Language API
- Database Management
- Machine Learning
- Natural Language Processing
- Bayesian
- Optimization
- Finance
- Bioinformatics and Biostatistics
- Network Analysis
- Spatial
- R Development
- Logging
- Data Packages
- Other Tools
- Other Interpreters
- Learning R
- Resources
- Other Awesome Lists
- Contributing
2023
2020
- π VSCode - π vscode-R + π vscode-r-lsp VSCode R Langauage Support
1819β
199π΄
gt) - Easily generate information-rich, publication-quality tables from R- π lightgbm - Light Gradient Boosting Machine.
- π torch - Tensors and Neural Networks with 'GPU' Acceleration.
2019
874β
105π΄
ggforce) - ggplot2 extension framework1965β
211π΄
rayshader) - 2D and 3D data visualizations via rgl599β
57π΄
vroom) - Fast reading of delimited files
Integrated Development Environments
Integrated Development Environment
- π VSCode - π vscode-R + π vscode-r-lsp VSCode R Langauage Support
- RStudio - A powerful and productive user interface for R. Works great on Windows, Mac, and Linux.
- Emacs + ESS - Emacs Speaks Statistics is an add-on package for emacs text editors.
- Sublime Text + R-Box - Add-on package for Sublime Text 2/3.
25β
8π΄
TextMate + r.tmblundle) - Add-on package for TextMate 1/2.- StatET - An Eclipse based IDE for R.
- π Microsoft R - Revolution R would be offered free to academic users and commercial software would focus on big data, large scale multiprocessor functionality.
- R Commander - A package that provides a basic graphical user interface.
1606β
291π΄
IRkernel ) - R kernel for Jupyter.- Deducer - A Menu driven data analysis GUI with a spreadsheet like data editor.
- π Radiant - A platform-independent browser-based interface for business analytics in R, based on the Shiny.
125β
59π΄
Vim-R) - Vim plugin for R.918β
122π΄
Nvim-R) - Neovim plugin for R.- π Jamovi and π JASP - Desktop software for both Bayesian and Frequentist methods, using a UI familiar to SPSS users.
- Bio7 - An IDE contains tools for model creation, scientific image analysis and statistical analysis for ecological modelling.
- RTVS - R Tools for Visual Studio.
1833β
74π΄
radian ) (formerly rtichoke) - A modern R console with syntax highlighting.- π RKWard - An extensible IDE/GUI for R.
Syntax
Packages change the way you use R.
950β
156π΄
magrittr ) - Let's pipe it.165β
39π΄
pipeR) - Multi-paradigm Pipeline Implementation.208β
16π΄
lambda.r) - Functional programming and simple pattern matching in R.1206β
258π΄
purrr) - A FP package for R in the spirit of underscore.js.
Data Manipulation
Packages for cooking data.
4603β
2130π΄
dplyr ) - Fast data frames manipulation and database query.3432β
977π΄
data.table ) - Fast data manipulation in a short and flexible syntax.206β
58π΄
reshape2 ) - Flexible rearrange, reshape and aggregate data.1307β
410π΄
tidyr) - Easily tidy data with spread and gather functions.17β
4π΄
broom ) - Convert statistical analysis objects into tidy data frames.199β
31π΄
rlist) - A toolbox for non-tabular data manipulation with lists.- ff - Data structures designed to store large datasets.
709β
207π΄
lubridate) - A set of functions to work with dates and times.285β
47π΄
stringi ) - ICU based string processing package.558β
178π΄
stringr ) - Consistent API for string processing, built on top of stringi.123β
23π΄
bigmemory) - Shared memory and memory-mapped matrices. The big* packages provide additional tools including linear models (biglm) and Random Forests (92β
26π΄
bigrf)).651β
63π΄
fuzzyjoin) - Join tables together on inexact matching.1558β
280π΄
tidyverse) - Easily install and load packages from the tidyverse.143β
7π΄
snakecase) - Automatically parse and convert strings into cases like snake or camel among others.486β
89π΄
DataExplorer) - Fast exploratory data analysis with minimum code.
Data Formats
Packages for reading and writing data of different formats.
- π arrow - An interface to the Arrow C++ library.
2708β
175π΄
feather ) - Fast, interoperable binary data frame storage for Python, R, and more powered by Apache Arrow.- fst - Lightning Fast Serialization of Data Frames for R.
413β
116π΄
haven) - Improved methods to import SPSS, Stata and SAS files in R.362β
36π΄
jsonlite) - A robust and quick way to parse JSON files in R.361β
18π΄
qs) - Quick serialization of R objects.- π readxl - Read excel files (.xls and .xlsx) into R.
978β
297π΄
readr ) - A fast and friendly way to read tabular data into R.580β
77π΄
rio) - A Swiss-Army Knife for Data I/O.?β
?π΄
readODS) - Read OpenDocument Spreadsheets into R as data.frames.32β
8π΄
RcppTOML) - Rcpp Bindings to C++ parser for TOML files.599β
57π΄
vroom) - Fast reading of delimited files.- π writexl - Portable, light-weight data frame to xlsx exporter for R.
152β
36π΄
yaml) - R package for converting objects to and from YAML.
Graphic Displays
Packages for showing data.
6189β
2026π΄
ggplot2 ) - An implementation of the Grammar of Graphics.524β
63π΄
ggfortify) - A unified interface to ggplot2 popular statistical packages using one line of code.1158β
91π΄
ggrepel) - Repel overlapping text labels away from each other.647β
100π΄
ggalt) - Extra Coordinate Systems, Geoms and Statistical Transformations for ggplot2.1851β
184π΄
ggstatsplot) - ggplot2 Based Plots with Statistical Details776β
169π΄
ggtree) - Visualization and annotation of phylogenetic tree.378β
62π΄
ggtech) - ggplot2 tech themes and scales- π ggplot2 Extensions - Showcases of ggplot2 extensions.
68β
14π΄
lattice) - A powerful and elegant high-level data visualization system.300β
89π΄
corrplot) - A graphical display of a correlation matrix or general matrix. It also contains some algorithms to do matrix reordering.- rgl - 3D visualization device system for R.
- Cairo - R graphics device using cairo graphics library for creating high-quality display output.
306β
47π΄
extrafont) - Tools for using fonts in R graphics.465β
37π΄
showtext) - Enable R graphics device to show text using system fonts.207β
60π΄
animation) - A simple way to produce animated graphics in R, using ImageMagick.1911β
309π΄
gganimate) - Create easy animations with ggplot2.- π misc3d - Powerful functions to deal with 3d plots, isosurfaces, etc.
- π xkcd - Use xkcd style in graphs.
- imager - An image processing package based on CImg library to work with images and display them.
1173β
93π΄
hrbrthemes) - π Opinionated, typographic-centric ggplot2 themes and theme components.756β
97π΄
waffle) - π Make waffle (square pie) charts in R.147β
28π΄
dendextend) - visualizing, adjusting and comparing trees of hierarchical clustering.9β
1π΄
idendro) - interactive exploration of dendrograms (trees of hierarchical clustering).- π r2d3 - R Interface to D3 Visualizations
2338β
158π΄
Patchwork) - Combine separate ggplots into the same graphic.- plot3D - Plotting Multi-Dimensional Data
- π plot3Drgl - Plotting Multi-Dimensional Data - Using 'rgl'
309β
15π΄
httpgd) - Asynchronous http server graphics device for R.
HTML Widgets
Packages for interactive visualizations.
363β
77π΄
heatmaply) - Interactive heatmaps with D3.237β
95π΄
d3heatmap) - Interactive heatmaps with D3 (no longer maintained).- DataTables - Displays R matrices or data frames as interactive HTML tables.
1658β
248π΄
DiagrammeR ) - Create JS graph diagrams and flowcharts in R.361β
202π΄
dygraphs) - Charting time-series data in R.686β
82π΄
formattable ) - Formattable Data Structures.709β
180π΄
ggvis ) - Interactive grammar of graphics for R.- Leaflet - One of the most popular JavaScript libraries interactive maps.
- MetricsGraphics - Enables easy creation of D3 scatterplots, line charts, and histograms.
- networkD3 - D3 JavaScript Network Graphs from R.
158β
24π΄
scatterD3) - Interactive scatterplots with D3.2463β
627π΄
plotly ) - Interactive ggplot2 and Shiny plotting with π plot.ly.1192β
661π΄
rCharts ) - Interactive JS Charts from R.- rbokeh - R Interface to Bokeh.
296β
63π΄
threejs) - Interactive 3D scatter plots and globes.633β
160π΄
timevis) - Create fully interactive timeline visualizations.523β
129π΄
visNetwork) - Using vis.js library for network visualization.395β
111π΄
wordcloud2) - R interface to wordcloud2.js.703β
147π΄
highcharter) - R wrapper for highcharts based on htmlwidgets565β
81π΄
echarts4r) - R wrapper to Echarts version 4
Reproducible Research
Packages for literate programming and reproducible workflows.
2326β
878π΄
knitr ) - Easy dynamic report generation in R.506β
44π΄
redoc) - Reversible Reproducible Documents903β
114π΄
tinytex) - A lightweight and easy-to-maintain LaTeX distribution- xtable - Export tables to LaTeX or HTML.
- rapport - An R templating system.
- rmarkdown - Dynamic documents for R.
846β
345π΄
slidify ) - Generate reproducible html5 slides from R markdown.- π Sweave - A package designed to write LaTeX reports using R.
108β
40π΄
texreg) - Formatting statistical models in LaTex and HTML.162β
38π΄
checkpoint) - Install packages from snapshots on the checkpoint server.- π brew - Pre-compute data to enhance your report templates. Can be combined with knitr.
- π officer - An R package to generate Microsoft Word, Microsoft PowerPoint and HTML reports.
- π flextable - An R package to embed complex tables (merged cells, multi-level headers and footers, conditional formatting) in Microsoft Word, Microsoft PowerPoint and HTML reports. It cooperates with the [officer] package and integrates with [rmarkdown] reports.
- π bookdown - Authoring Books with R Markdown.
107β
12π΄
ezknitr) - Avoid the typical working directory pain when using 'knitr'- π targets - Make-like pipeline tool for organizing and running data science workflows, automatically skipping steps that have already been done. Supported by π rOpenSci.
- R Suite - A package to design flexible and reproducible deployment workflows for R.
- π kable - Build fancy HTML or 'LaTeX' tables using 'kable()' from 'knitr'.
Web Technologies and Services
Packages to surf the web.
169β
66π΄
Web Technologies List) - Information about how to use R and the world wide web together.5167β
1816π΄
shiny ) - Easy interactive web applications with R. See also766β
142π΄
awesome-rshiny)715β
120π΄
shinyjs) - Easily improve the user interaction and user experience in your Shiny apps in seconds.- RCurl - General network (HTTP/FTP/...) client interface for R.
208β
68π΄
curl) - A Modern and Flexible Web Client for R.979β
2001π΄
httr ) - User-friendly RCurl wrapper.220β
87π΄
httpuv) - HTTP and WebSocket server library.- XML - Tools for parsing and generating XML within R.
- π xml2 - Optimized tools for parsing and generating XML within R.
1434β
337π΄
rvest ) - Simple web scraping for R, using CSSSelect or XPath syntax.- π OpenCPU - HTTP API for R handling concurrent calls, based on the Apache2 web server, to expose R code as REST web services and create full-sized, multi-page web applications.
350β
252π΄
Rfacebook) - Access to Facebook API via R.127β
43π΄
RSiteCatalyst) - R client library for the Adobe Analytics.1351β
253π΄
plumber) - A library to expose existing R code as web API.- π golem - A framework for building production-grade Shiny apps.
Parallel Computing
Packages for parallel computing.
- parallel - R started with release 2.14.0 which includes a new package parallel incorporating (slightly revised) copies of packages multicore and snow.
- Rmpi - Rmpi provides an interface (wrapper) to MPI APIs. It also provides interactive R slave environment.
- foreach - Executing the loop in parallel.
- π future - A minimal, efficient, cross-platform unified Future API for parallel and distributed processing in R; designed for beginners as well as advanced developers.
641β
329π΄
SparkR ) - R frontend for Spark.163β
54π΄
DistributedR) - A scalable high-performance platform from HP Vertica Analytics Team.117β
17π΄
ddR) - Provides distributed data structures and simplifies distributed computing in R.- sparklyr - R interface for Apache Spark from RStudio.
- π batchtools - High performance computing with LSF, TORQUE, Slurm, OpenLava, SGE and Docker Swarm.
High Performance
Packages for making R faster.
- Rcpp - Rcpp provides a powerful API on top of R, make function in R extremely faster.
80β
11π΄
Rcpp11) - Rcpp11 is a complete redesign of Rcpp, targetting C++11.- compiler - speeding up your R code using the JIT
187β
45π΄
cpp11) - cpp11 is a header-only R package that helps R package developers handle R objects with C++ code. It's similar to Rcpp but with different design trade-offs and features.
Language API
Packages for other languages.
- rJava - Low-level R to Java interface.
15β
8π΄
jvmr) - Integration of R, Java, and Scala.- π reticulate - Interface to 'Python'.
- rJython - R interface to Python via Jython.
- rPython - Package allowing R to call Python.
85β
31π΄
runr) - Run Julia and Bash from R.143β
23π΄
RJulia) - R package Call Julia.258β
34π΄
JuliaCall) - Seamless Integration Between R and Julia.- π RinRuby - a Ruby library that integrates the R interpreter in Ruby.
- R.matlab - Read and write of MAT files together with R-to-MATLAB connectivity.
17β
9π΄
RcppOctave) - Seamless Interface to Octave and Matlab.- RSPerl - A bidirectional interface for calling R from Perl and Perl from R.
189β
28π΄
V8) - Embedded JavaScript Engine.- htmlwidgets - Bring the best of JavaScript data visualization to R.
- rpy2 - Python interface for R.
Database Management
Packages for managing data.
- RODBC - ODBC database access for R.
277β
74π΄
DBI) - Defines a common interface between the R and database management systems.244β
62π΄
elastic) - Wrapper for the Elasticsearch HTTP API282β
64π΄
mongolite) - Streaming Mongo Client for R377β
107π΄
odbc) - Connect to ODBC databases (using the DBI interface)120β
40π΄
RMariaDB) - An R interface to MariaDB (a replacement for the old RMySQL package)- RMySQL - R interface to the MySQL database.
- ROracle - OCI based Oracle database interface for R.
320β
76π΄
RPostgres) - an DBI-compliant interface to the postgres database.- π RPostgreSQL - R interface to the PostgreSQL database system.
- RSQLite - SQLite interface for R
- RJDBC - Provides access to databases through the JDBC interface.
53β
26π΄
rmongodb) - R driver for MongoDB.85β
17π΄
redux) - Redis client for R.- RCassandra - Direct interface (not Java) to the most basic functionality of Apache Cassandra.
123β
63π΄
RHive) - R extension facilitating distributed computing via Apache Hive.237β
69π΄
RNeo4j) - Neo4j graph database driver.76β
16π΄
rpostgis) - R interface to PostGIS database and get spatial objects in R.
Machine Learning
Packages for making R cleverer.
335β
61π΄
anomalize) - Tidy Anomaly Detection using Twitter's AnomalyDetection method.3528β
782π΄
AnomalyDetection ) - AnomalyDetection R package from Twitter.- ahaz - Regularization for semiparametric additive hazards regression.
- arules - Mining Association Rules and Frequent Itemsets
- bigrf - Big Random Forests: Classification and Regression Forests for Large Data Sets
- bigRR - Generalized Ridge Regression (with special advantage for p >> n cases)
- bmrm - Bundle Methods for Regularized Risk Minimization Package
- Boruta - A wrapper algorithm for all-relevant feature selection
753β
187π΄
BreakoutDetection ) - Breakout Detection via Robust E-Statistics from Twitter.- bst - Gradient Boosting
1627β
259π΄
CausalImpact ) - Causal inference using Bayesian structural time-series models.- C50 - C5.0 Decision Trees and Rule-Based Models
- caret - Classification and Regression Training
239β
130π΄
Clever Algorithms For Machine Learning)- CORElearn - Classification, regression, feature evaluation and ordinal evaluation
- CoxBoost - Cox models by likelihood based boosting for a single survival endpoint or competing risks
- Cubist - Rule- and Instance-Based Regression Modeling
- e1071 - Misc Functions of the Department of Statistics (e1071), TU Wien
- earth - Multivariate Adaptive Regression Spline Models
- elasticnet - Elastic-Net for Sparse Estimation and Sparse PCA
- ElemStatLearn - Data sets, functions and examples from the book: "The Elements of Statistical Learning, Data Mining, Inference, and Prediction" by Trevor Hastie, Robert Tibshirani and Jerome Friedman
- evtree - Evolutionary Learning of Globally Optimal Trees
?β
?π΄
fable) - a collection of commonly used univariate and multivariate time series forecasting models17355β
4467π΄
prophet ) - Tool for producing high quality forecasts for time series data that has multiple seasonality with linear or non-linear growth.- π FSelector - A feature selection framework, based on subset-search or feature ranking approches.
- frbs - Fuzzy Rule-based Systems for Classification and Regression Tasks
- GAMBoost - Generalized linear and additive models by likelihood based boosting
- gamboostLSS - Boosting Methods for GAMLSS
- gbm - Generalized Boosted Regression Models
- glmnet - Lasso and elastic-net regularized generalized linear models
- glmpath - L1 Regularization Path for Generalized Linear Models and Cox Proportional Hazards Model
- GMMBoost - Likelihood-based Boosting for Generalized mixed models
- grplasso - Fitting user specified models with Group Lasso penalty
- grpreg - Regularization paths for regression models with grouped covariates
- h2o - Deeplearning, Random forests, GBM, KMeans, PCA, GLM
- hda - Heteroscedastic Discriminant Analysis
- ipred - Improved Predictors
- kernlab - kernlab: Kernel-based Machine Learning Lab
- klaR - Classification and visualization
- kohonen - Supervised and Unsupervised Self-Organising Maps.
- π L0Learn - Fast algorithms for best subset selection
- lars - Least Angle Regression, Lasso and Forward Stagewise
- lasso2 - L1 constrained estimation aka βlassoβ
- LiblineaR - Linear Predictive Models Based On The Liblinear C/C++ Library
- π lightgbm - Light Gradient Boosting Machine.
586β
142π΄
lme4 ) - Mixed-effects models- π nlme - Mixed-effects models, handling user-specified matrix of residual covariance, relevant for the analysis of repeated observations in longitudinal trials
- π glmmTMB - Generalized mixed-effects models, handling user-specified matrix of residual covariance, relevant for the analysis of repeated observations in longitudinal trials
- LogicReg - Logic Regression
- maptree - Mapping, pruning, and graphing tree models
- mboost - Model-Based Boosting
3647β
2245π΄
Machine Learning For Hackers )1619β
407π΄
mlr) - Extensible framework for classification, regression, survival analysis and clustering [DEPRECIATED]845β
83π΄
mlr3 ) - Next generation extensible framework for classification, regression, survival analysis and clustering- mvpart - Multivariate partitioning
20666β
6895π΄
MXNet ) - MXNet brings flexible and efficient GPU computing and state-of-art deep learning to R.- ncvreg - Regularization paths for SCAD- and MCP-penalized regression models
- nnet - eed-forward Neural Networks and Multinomial Log-Linear Models
- oblique.tree - Oblique Trees for Classification Data
- pamr - Pam: prediction analysis for microarrays
- party - A Laboratory for Recursive Partytioning
- partykit - A Toolkit for Recursive Partytioning
- penalized - L1 (lasso and fused lasso) and L2 (ridge) penalized estimation in GLMs and in the Cox model
- penalizedLDA - Penalized classification using Fisher's linear discriminant
- penalizedSVM - Feature Selection SVM using penalty functions
- quantregForest - quantregForest: Quantile Regression Forests
- randomForest - randomForest: Breiman and Cutler's random forests for classification and regression.
- randomForestSRC - randomForestSRC: Random Forests for Survival, Regression and Classification (RF-SRC).
741β
193π΄
ranger) - A Fast Implementation of Random Forests.- rattle - Graphical user interface for data mining in R.
- rda - Shrunken Centroids Regularized Discriminant Analysis
- rdetools - Relevant Dimension Estimation (RDE) in Feature Spaces
- REEMtree - Regression Trees with Random Effects for Longitudinal (Panel) Data
- relaxo - Relaxed Lasso
- rgenoud - R version of GENetic Optimization Using Derivatives
- rgp - R genetic programming framework
- Rmalschains - Continuous Optimization using Memetic Algorithms with Local Search Chains (MA-LS-Chains) in R
- rminer - Simpler use of data mining methods (e.g. NN and SVM) in classification and regression
- ROCR - Visualizing the performance of scoring classifiers
- RoughSets - Data Analysis Using Rough Set and Fuzzy Rough Set Theories
- rpart - Recursive Partitioning and Regression Trees
- RPMM - Recursively Partitioned Mixture Model
- RSNNS - Neural Networks in R using the Stuttgart Neural Network Simulator (SNNS)
- π Rsomoclu - Parallel implementation of self-organizing maps.
- RWeka - R/Weka interface
- RXshrink - RXshrink: Maximum Likelihood Shrinkage via Generalized Ridge or Least Angle Regression
- sda - Shrinkage Discriminant Analysis and CAT Score Variable Selection
- SDDA - Stepwise Diagonal Discriminant Analysis
258β
69π΄
SuperLearner) and subsemble - Multi-algorithm ensemble learning packages.464β
155π΄
survminer) - Survival Analysis & Visualization- π survival - Survival Analysis
- svmpath - svmpath: the SVM Path algorithm
- tgp - Bayesian treed Gaussian process models
- π tidymodels - A collection of packages for modeling and statistical analysis that share the underlying design philosophy, grammar, and data structures of the tidyverse.
- π torch - Tensors and Neural Networks with 'GPU' Acceleration.
- tree - Classification and regression trees
- varSelRF - Variable selection using random forests
571β
260π΄
xgboost ) - eXtreme Gradient Boosting Tree model, well known for its speed and performance.
Natural Language Processing
Packages for Natural Language Processing.
833β
136π΄
text2vec) - Fast Text Mining Framework for Vectorization and Word Embeddings.- tm - A comprehensive text mining framework for R.
- openNLP - Apache OpenNLP Tools Interface.
- koRpus - An R Package for Text Analysis.
- zipfR - Statistical models for word frequency distributions.
- NLP - Basic functions for Natural Language Processing.
545β
132π΄
LDAvis) - Interactive visualization of topic models.- π topicmodels - Topic modeling interface to the C code developed by by David M. Blei for Topic Modeling (Latent Dirichlet Allocation (LDA), and Correlated Topics Models (CTM)).
- π syuzhet - Extracts sentiment from text using three different sentiment dictionaries.
- π SnowballC - Snowball stemmers based on the C libstemmer UTF-8 library.
807β
190π΄
quanteda) - R functions for Quantitative Analysis of Textual Data.224β
54π΄
Topic Models Resources) - Topic Models learning and R related resources.29β
10π΄
NLP for ) - NLP related resources in R. @Chinese94β
17π΄
MonkeyLearn) - π R package for text analysis with Monkeylearn π.- tidytext - Implementing tidy principles of Hadley Wickham to text mining.
112β
4π΄
utf8) - Manipulating and printing UTF-8 text that fixes multiple bugs in R's UTF-8 handling.- π corporaexplorer - Dynamic exploration of text collections
Bayesian
Packages for Bayesian Inference.
- coda - Output analysis and diagnostics for MCMC.
- mcmc - Markov Chain Monte Carlo.
- MCMCpack - Markov chain Monte Carlo (MCMC) Package.
- R2WinBUGS - Running WinBUGS and OpenBUGS from R / S-PLUS.
- BRugs - R interface to the OpenBUGS MCMC software.
- rjags - R interface to the JAGS MCMC library.
- rstan - R interface to the Stan MCMC software.
Optimization
Packages for Optimization.
- π lpSolve - Interface to
Lp_solve
to Solve Linear/Integer Programs. - π minqa - Derivative-free optimization algorithms by quadratic approximation.
- π nloptr - NLopt is a free/open-source library for nonlinear optimization.
- π ompr - Model mixed integer linear programs in an algebraic way directly in R.
- π Rglpk - R/GNU Linear Programming Kit Interface
- π ROI - The R Optimization Infrastructure ('ROI') is a sophisticated framework for handling optimization problems in R.
Finance
Packages for dealing with money.
- quantmod - Quantitative Financial Modelling & Trading Framework for R.
- pedquant - Public Economic Data and Quantitative Analysis
- TTR - Functions and data to construct technical trading rules with R.
- PerformanceAnalytics - Econometric tools for performance and risk analysis.
- zoo - S3 Infrastructure for Regular and Irregular Time Series.
- xts - eXtensible Time Series.
- tseries - Time series analysis and computational finance.
- fAssets - Analysing and Modelling Financial Assets.
157β
66π΄
scorecard) - Credit Risk Scorecard
Bioinformatics and Biostatistics
Packages for processing biological datasets.
- Bioconductor - Tools for the analysis and comprehension of high-throughput genomic data.
- genetics - Classes and methods for handling genetic data.
- gap - An integrated package for genetic data analysis of both population and family data.
- ape - Analyses of Phylogenetics and Evolution.
- pheatmap - Pretty heatmaps made easy.
586β
142π΄
lme4) - Generalized mixed-effects models.- π nlme - Mixed-effects models, handling user-specified matrix of residual covariance, relevant for the anaysis of repeated observations in longitudinal trials.
- π glmmTMB - Generalized mixed-effects models, handling user-specified matrix of residual covariance, relevant for the anaysis of repeated observations in longitudinal trials.
Network Analysis
Packages to construct, analyze and visualize network data.
3262β
602π΄
Network Analysis List) - Network Analysis related resources.- igraph - A collection of network analysis tools.
- π network - Basic tools to manipulate relational data in R.
- π sna - Basic network measures and visualization tools.
83β
20π΄
netdiffuseR) - Tools for Analysis of Network Diffusion.- π networkDynamic - Support for dynamic, (inter)temporal networks.
- π ndtv - Tools to construct animated visualizations of dynamic network data in various formats.
- statnet - The project behind many R network analysis packages.
- π ergm - Exponential random graph models in R.
- π latentnet - Latent position and cluster models for network objects.
- π tnet - Network measures for weighted, two-mode and longitudinal networks.
- π rgexf - Export network objects from R to GEXF, for manipulation with network software like π Gephi or Sigma.
523β
129π΄
visNetwork) - Using vis.js library for network visualization.529β
57π΄
tidygraph) - A tidy API for graph manipulation
Spatial
Packages to explore the earth.
- π CRAN Task View: Analysis of Spatial Data- Spatial Analysis related resources.
- Leaflet - One of the most popular JavaScript libraries interactive maps.
754β
228π΄
ggmap) - Plotting maps in R with ggplot2.254β
128π΄
REmap) - R interface to the JavaScript library ECharts for interactive map data visualization.- π sf - Improved Classes and Methods for Spatial Data.
- π sp - Classes and Methods for Spatial Data.
- π rgeos - Interface to Geometry Engine - Open Source
- π rgdal - Bindings for the Geospatial Data Abstraction Library
- π maptools - Tools for Reading and Handling Spatial Objects
181β
47π΄
gstat) - Spatial and spatio-temporal geostatistical modelling, prediction and simulation.69β
20π΄
spacetime) - R classes and methods for spatio-temporal data.- π RColorBrewer - Provides color schemes for maps
174β
43π΄
spatstat) - Spatial Point Pattern Analysis, Model-Fitting, Simulation, Tests- π spdep - Spatial Dependence: Weighting Schemes, Statistics and Models
308β
40π΄
tigris) - Download and use Census TIGER/Line shapefiles in R- π GWmodel - Geographically-Weighted Models
6β
1π΄
tmap) - R package for thematic maps
R Development
Packages for packages.
43β
6π΄
Package Development List) - R packages to improve package development.- π promises - Abstractions for Promise-Based Asynchronous Programming
2337β
758π΄
devtools ) - Tools to make an R developer's life easier.857β
315π΄
testthat ) - An R package to make testing fun.394β
60π΄
R6 ) - simpler, faster, lighter-weight alternative to R's built-in classes.201β
44π΄
pryr ) - Make it easier to understand what's going on in R.562β
229π΄
roxygen ) - Describe your functions in comments next to their definitions.103β
19π΄
lineprof) - Visualise line profiling results in R.396β
95π΄
packrat) - Make your R projects more isolated, portable, and reproducible.?β
?π΄
installr) - Functions for installing softwares from within R (for Windows).?β
?π΄
import) - An import mechanism for R.4β
0π΄
modules) - An alternative (Python style) module system for R.- Rocker - R configurations for π Docker.
808β
141π΄
RStudio Addins) - List of RStudio addins.152β
105π΄
drat) - Creation and use of R repositories on GitHub or other repos.328β
119π΄
covr) - Test coverage for your R package and (optionally) upload the results to π coveralls or π codecov.1127β
183π΄
lintr) - Static code analysis for R to enforce code style.689β
363π΄
staticdocs) - Generate static html documentation for an R package.164β
17π΄
sinew) - Generate roxygen2 skeletons populated with information scraped from the function script.
Logging
Packages for Logging
150β
34π΄
futile.logger) - A logging package in R similar to log4j89β
22π΄
log4r) - A log4j derivative for R- π logging - A logging package emulating the python logging package.
Data Packages
Handy Data Packages
737β
191π΄
engsoccerdata) - English and European soccer results 1871-2016.- gapminder - Excerpt from the Gapminder dataset (data about countries through the past 50 years).
- π wbstats - Tools for searching and downloading data and statistics from the World Bank Data API and the World Bank Data Catalog API.
6β
2π΄
ICON) - complex systems & networks datasets from the Index of COmplex Networks (ICON) database webpage.12β
2π΄
RCOBOLDI) - Import COBOL CopyBook data files directly into R as properly structured data frames. Package builds are available via1β
0π΄
Drat) and π DockerHub.
Other Tools
Handy Tools for R
211β
59π΄
git2r) - Gives you programmatic access to Git repositories from R.- π Conda - Most R packages are available through the Conda polyglot cross-platform dependency manager.
Other Interpreters
Alternative R engines.
- π CXXR - Refactorising R into C++.
- π fastR - FastR is an implementation of the R Language in Java atop Truffle and Graal.
- pqR - a "pretty quick" implementation of R
- renjin - a JVM-based interpreter for R.
133β
23π΄
rho) - Refactor the interpreter of the R language into a fully-compatible, efficient, VM for R.90β
10π΄
riposte) - a fast interpreter and JIT for R.- TERR - TIBCO Enterprise Runtime for R.
Learning R
Packages for Learning R.
- swirl - An interactive R tutorial directly in your R console.
1954β
893π΄
DataScienceR ) - a list of R tutorials for Data Science, NLP and Machine Learning.
Resources
Where to discover new R-esources.
Websites
Manuals
- R-project - The R Project for Statistical Computing.
- π An Introduction to R - A very good introductory text on R, also covers some advanced topic. See also the
Manuals
section on π CRAN - π CRAN Contributed Docs - CRAN Contributed Documentation in many languages.
- Quick-R - An excellent quick reference
- tryR - A quick course for getting started with R.
Tools and References
- π RDocumentation - Search through all CRAN, Bioconductor, Github packages and their archives with RDocumentation.
- π rdrr.io - Find R package documentation. Try R packages in your browser.
- CRAN Task Views - Task Views for CRAN packages.
- π rnotebook.io - Create online R Jupyter Notebooks for free.
News and Info
- π R Weekly - Weekly updates about R and Data Science. R Weekly is openly developed on GitHub.
- R Bloggers - There are people scattered across the Web who blog about R. This is simply an aggregator of many of those feeds.
- π R-users - A job board for R users (and the people who are looking to hire them)
Books
Free and Online
- R for Data Science by Garrett Grolemund & Hadley Wickham - Free book from RStudio developers with emphasis on data science workflow.
- R Cookbook by Winston Chang - A problem-oriented online book that supports his R Graphics Cookbook, 2nd ed. (2018).
- π Advanced R, 2nd ed. by Hadley Wickham (2019) - An online version of the Advanced R book.
- π R Packages, 2nd ed. by Hadley Wickham & Jennifer Bryan - A book (in paper and website formats) on writing R packages.
- Books written as part of the Johns Hopkins Data Science Specialization:
- π Exploratory Data Analysis with R by Roger D. Peng (2016) - Basic analytical skills for all sorts of data in R.
- π R Programming for Data Science by Roger D. Peng (2019) - More advanced data analysis that relies on R programming.
- π Report Writing for Data Science in R by Roger D. Peng (2019) - R-based methods for reproducible research and report generation.
- R for SAS and SPSS users by Bob Muenchen (2012) - An excellent resource for users already familiar with SAS or SPSS.
- Introduction to Statistical Learning with Application in R by Gareth James et al. (2017) - A simplified and "operational" version of The Elements of Statistical Learning. Free softcopy provided by its authors.
- The R Inferno by Patrick Burns (2011) - Patrick Burns gives insight into R's ins and outs along with its quirks!
- π Efficient R Programming by Colin Gillespie & Robin Lovelace (2017) - An online version of the OβReilly book: Efficient R Programming.
- π The R Programming Wikibook - A collaborative handbook for R.
Paid
- The Art of R Programming - It's a good resource for systematically learning fundamentals such as types of objects, control statements, variable scope, classes and debugging in R.
- R Cookbook, 2nd ed. by JD Long & Paul Teetor (2019) - A quick and simple introduction to conducting many common statistical tasks with R.
- R in Action - This book aims at all levels of users, with sections for beginning, intermediate and advanced R ranging from "Exploring R data structures" to running regressions and conducting factor analyses.
- Use R! Series by Springer - This series of inexpensive and focused books from Springer publish shorter books aimed at practitioners. Books can discuss the use of R in a particular subject area, such as Bayesian networks, ggplot2 and Rcpp.
- π Learning R Programming - Learning R as a programming language from basics to advanced topics.
Book/monograph Lists and Reviews
224β
30π΄
R Books List) - List of R Books.1618β
232π΄
Readings in Applied Data Science) - These readings reflect Hadley's personal thoughts about applied data science.
Podcasts
- π Not So Standard Deviations - The Data Science Podcast.
- π @Roger Peng and π @Hilary Parker.
- R World News - R World News helps you keep up with happenings within the R community.
- π @Bob Rudis and π @Jay Jacobs.
- π The R-Podcast - Giving practical advice on how to use R.
- π @Eric Nantz.
- R Talk - News and discussions of statistical software and language R.
- π @Oliver Keyes, π @Jasmine Dumas, π @Ted Hart and π @Mikhail Popov.
- π R Weekly - Weekly news updates about the R community.
Reference Cards
- π RStudio Cheat Sheets
- R Reference Card 2.0 - Material from R for Beginners by permission of Emmanuel Paradis (Version 2 by Matt Baggott).
- Regression Analysis Refcard - R Reference Card for Regression Analysis.
- Reference Card for ESS - Reference Card for ESS.
MOOCs
Massive open online courses.
- π Johns Hopkins University Data Science Specialization - 9 courses including: Introduction to R, literate analysis tools, Shiny and some more.
- HarvardX Biomedical Data Science - Introduction to R for the Life Sciences.
- π Explore Statistics with R - Covers introduction, data handling and statistical analysis in R.
Lists
Great resources for learning domain knowledge.
224β
30π΄
Books) - List of R Books.- π ggplot2 Extensions - Showcases of ggplot2 extensions.
29β
10π΄
Natural Language Processing ) - NLP related resources in R. @Chinese3262β
602π΄
Network Analysis) - Network Analysis related resources.194β
48π΄
Open Data) - Using R to obtain, parse, manipulate, create, and share open data.- Posts - Great R blog posts or Rticles.
43β
6π΄
Package Development) - R packages to improve package development.- π R Project Conferences - Information about useR! Conferences and DSC Conferences.
657β
228π΄
RStartHere) - A guide to some of the most useful R packages, organized by workflow.808β
141π΄
RStudio Addins) - List of RStudio addins.224β
54π΄
Topic Models) - Topic Models learning and R related resources.169β
66π΄
Web Technologies) - Information about how to use R and the world wide web together.
R Ecosystems
R communities and package collections (in alphabetical order):
- rOpenGov Open government data, computational social science, digital humanities
- rOpenHealth Public health data
- π rOpenSci Open science
2018
536β
64π΄
fable) - univariate and multivariate time series forecasting models- π r2d3 - R Interface to D3 Visualizations
448β
96π΄
rstats-ed) - List of courses teaching R- π promises - Abstractions for Promise-Based Asynchronous Programming
- π tinytex - A lightweight and easy-to-maintain LaTeX distribution
1618β
232π΄
Readings in Applied Data Science) - These readings reflect Hadley's personal thoughts about applied data science.
2017
17355β
4467π΄
prophet) - Tool for producing high quality forecasts for time series data that has multiple seasonality with linear or non-linear growth.1558β
280π΄
tidyverse) - Easily install and load packages from the tidyverse1206β
258π΄
purrr) - A functional programming toolkit for R1173β
93π΄
hrbrthemes) - π Opinionated, typographic-centric ggplot2 themes and theme components1466β
281π΄
xaringan) - Create HTML5 slides with R Markdown and the JavaScript library1685β
341π΄
blogdown) - Create Blogs and Websites with R Markdown680β
64π΄
glue) - Glue strings to data in R. Small, fast, dependency free interpreted string literals.328β
119π΄
covr) - Test coverage reports for R1127β
183π΄
lintr) - Static Code Analysis for R721β
83π΄
reprex) - Render bits of R code for sharing, e.g., on GitHub or StackOverflow.1596β
363π΄
reticulate) - R Interface to Python1312β
327π΄
tensorflow) - TensorFlow for R112β
4π΄
utf8) - Manipulating and printing UTF-8 text that fixes multiple bugs in R's UTF-8 handling.2338β
158π΄
Patchwork) - Combine separate ggplots into the same graphic.
Other Awesome Lists
30956β
3581π΄
awesome-awesomeness)9374β
697π΄
lists)766β
142π΄
awesome-rshiny)
Contributing
Your contributions are always welcome!
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License - CC BY-NC-SA 4.0
Source
5667β
1511π΄
qinwf/awesome-R)