A curated list of amazingly awesome R libraries, resources and package collection.
Please see author's details and author's personal website!
Collaboration and pull requests are always welcomed!
Packages that enable you to manipulate data
- dplyr - a grammar of data manipulation.
- tibble - efficient display structure for tabular data.
- dbplyr - A 'dplyr' Back End for Databases.
- plyr - the split-apply-combine paradigm for R.
- tidyr - Easily Tidy Data with 'spread()' and 'gather()' Functions.
- jsonlite - A Robust, High Performance JSON Parser and Generator for R.
- stringr - Simple, Consistent Wrappers for Common String Operations.
- stringi - Character String Processing Facilities.
- data.table - Extension of "data.frame".
- magrittr - A Forward-Pipe Operator for R.
- reshape2 - Flexibly Reshape Data: A Reboot of the Reshape Package.
- forcats - Tools for Working with Categorical Variables (Factors).
- broom - Convert Statistical Analysis Objects into Tidy Data Frames.
- Matrix - Sparse and Dense Matrix Classes and Methods.
- lubridate - Make Dealing with Dates a Little Easier.
- xts - tools for time series based data.
- hashmap - The Faster Hash Map.
- rlist - A Toolbox for Non-Tabular Data Manipulation.
- yaml - Methods to Convert R Data to YAML and Back.
- xml2 - Parse XML.
- lobstr - lobstr provides tools in the same vein as str(), which allow you to dig into the detail of an object.
- reticulate - Interface to 'Python'.
- moderndive - An R package of datasets and wrapper functions for tidyverse-friendly introductory linear regression.
Packages that enable you to plot
- ggplot2 - Create Elegant Data Visualisations Using the Grammar of Graphics.
- gganinate - A Grammar of Animated Graphics.
- ggedit - Interactive 'ggplot2' Layer and Theme Aesthetic Editor.
- ggfittext - Fit Text Inside a Box in 'ggplot2'.
- ggforce - Accelerating 'ggplot2'.
- gggenes - Draw Arrow Maps in 'ggplot2'.
- ggnetwork - Geometrics to Plot Networks with ''ggplot2''.
- ggmap - Spatial Visualization with ''ggplot2''.
- ggpubr - ''ggplot2'' Based Publication Ready Plots.
- ggrepel - Automatically Position Non-Overlapping Text Labels with 'ggplot2'.
- ggridge - Ridgeline Plots in 'ggplot2'.
- ggsci - Scientific Journal and Sci-Fi Themed Color palettes for 'ggplot2'.
- ggsignif - Significance Brackets for 'ggplot2'.
- ggthemes - Extra Themes, Scales and Geoms for 'ggplot2'.
- ggvis - Interactive Grammar of Graphics.
- cowplot - Streamlined Plot Theme and Plot Annotations for 'ggplot2'.
- treemapify - Draw Treemaps in 'ggplot2'.
- ggalluvial - Alluvial Diagrams in 'ggplot2'.
- GGally - Extension to 'ggplot2'.
- alluvial - Alluvial Diagrams.
- corrplot - Visualization of a Correlation Matrix.
- arulesViz - Visualizing Association Rules and Frequent Itemsets.
- gplots - Various R Programming Tools for Plotting Data.
- rpart.plot - Plot 'rpart' Models: An Enhanced Version of 'plot.rpart'.
- survival - Survival Analysis.
- pheatmap - Pretty Heatmap.
- ROCR - Visualization the Performance of Scoring Classifiers.
- pROC - Display and Analyze ROC Curves.
- ggstance - Horizontal versions of common plots.
- ggExtra - Marginal histograms for a plot.
Packages that enable you to import, load and save data
- readr - Read Rectangular Text Data.
- openxlsx - Read, Write and Edit XLSX Files
- readxl - Read Excel Files.
- clipr - Read and Write from the System Clipboard.
- data.table - Extension of "data.frame".
- feather - R Bindings to the Feather 'API'.
- haven - Import and Export 'SPSS', 'Stata' and 'SAS' Files.
- httr - Tools for Working with URLs and HTTP.
- rvest - Easily Harvest (Scrape) Web Pages.
- DBI - R Database Interface
- RMySQL - MySQL driver for DBI
- RPostgres - Postgres driver for DBI
- RSQLite - SQlite driver for DBI
- git2r - Provides Access to Git Repositories.
- RCurl - General Network (HTTP/FTP/...) Client Interface for R.
packages that enable you to visualize network
- igraph - Network Analysis and Visualization.
- ggnetwork - Geometrics to Plot Networks with ''ggplot2''.
- network3D - D3 JavaScript Network Graphs from R.
- network - Classes for Relational Data.
- sna - Tools for Social Network Analysis.
- snow - Simple Network of Workstations.
- visNetwork - Network Visualization using 'vis.js' Library.
packages that enable you to make interactive graphics
- htmlwidgets - framework for creating JavaScript widgets with R.
- networkD3 - Interative d3 network graphs.
- d3heatmap - Interactive d3 heatmaps.
- DT - Interactive tables.
- REmap - Create html maps by Echarts.
- echarts4r - EChart htmlwidget.
- leaflet - Interactive maps.
- plotly - Interactive plots.
- Highcharter - Interactive Highcharts plots.
- visNetwork - Interactive network graphs.
packages that enable you to draw word cloud
- wordcloud - Word Clouds.
- wordcloud2 - Create Word Cloud by 'htmlwidget'.
packages that enable you to do text mining
- tidytext - Text Mining using 'dplyr', 'ggplot2', and Other Tidy Tools.
- widyr - Widen, Process, then Re-Tidy Data.
- tm - Text Mining Package.
- NLP - Natural Language Processing Infrastructure.
- janeaustenr - Jane Austen's Complete Novels.
packages that enable you to deploy machine learning algorithms
- caret - Classification and Regression Training.
- xgboost - Extreme Gradient Boosting.
- glmnet - Lasso and Elastic-Net Regularized Generalized Linear Models.
- e1071 - Misc Functions of the Department of Statistics, ProbabilityTheory Group (Formerly: E1071), TU Wien.
- arules - Mining Association Rules and Frequent Itemsets.
- car - Companion to Applied Regression.
- igraph - PageRank algotirhm.
- kernlab - Kernel-Based Machine Learning Lab.
- modelr - Modelling Functions that Work with the Pipe.
- gbm - gradient boosted regression models.
- nlme - Linear and Nonlinear Mixed Effects Models.
- randomForest - Breiman and Cutler's Random Forests for Classification and Regression.
- rpart - Recursive Partitioning and Regression Trees.
- boot - Bootstrap Functions (Originally by Angelo Canty for S).
- gbm - gradient boosted regression models.
- nnet - Feed-Forward Neural Networks and Multinomial Log-Linear Models.
- neuralnet - Training of Neural Networks.
- h2o - parallel distributed machine learning algorithms.
- mlr - Machine Learning in R.
- ggpomological - Pomological Colors.
- visdat - Preliminary Exploratory Visualisation of Data.
- lares - R Package for Analytics and Machine Learning.
- mlr3 - A clean, object-oriented rewrite of mlr.
- mlrCPO - Composable Preprocessing Operators for MLR.
packages that enable you to play with time
- xts - eXtensible Time Series.
- forecast - Forecasting Functions for Time Series and Linear Models.
- zoo - S3 Infrastructure for Regular and Irregular Time Series (Z's Ordered Observations).
packages that enable you to write markdwon in R
- rmarkdown - Dynamic Documents for R.
- rsconnect - Deployment Interface for R Markdown Documents and Shiny Applications.
- knit - A General-Purpose Package for Dynamic Report Generation in R.
packages that enable you to develop your own project
- devtools - Tools to Make Developing R Packages Easier.
- Rcpp - Seamless R and C++ Integration.
- testthat - Unit Testing for R.
- roxygen2 - In-Line Documentation for R.
- bindrcpp - An 'Rcpp' Interface to Active Bindings.
- RStudio Desktop IDE - IDE.
- RStudio Server Open Source - server IDE.
- Anaconda - The World's Most Popular Python/R Data Science Platform.
- Visual Studio Code - Open source code editor.
- goodpractice - Advice on R Package Building.
Online blogs.
- RPubs - Easy web publishing from R.
- Shinyapps - Share your Shiny Applications Online.
- R-bloggers - R news and tutorials contributed by (750) R bloggers.
- RWeekly - Weekly Updates from the Entire R Community.
- RDocumentation - Search all 16,944 CRAN, Bioconductor and GitHub packages.
- Rstudio Community - The Rstudio Community.
Online learning materials
- Writing R extension - The online pdf of telling you how to write your own packages.
- R packages - This is the book site for “R packages”. It was published with O’Reilly in April 2015.
- R for Data Science - This is the website for “R for Data Science”.
- Text Mining with R - A Tidy Approach - This is the website for Text Mining with R.
- R Start Here - A guide to some of the most useful R Packages that we know about.
- ggplot2 Doc - Reference of ggplot2.
- Plotly for R - plotly for R.
- Efficient R programming - Efficient R programming by Colin Gillespie and Robin Lovelace.
- Advanced R - Advanced R.
- Advanced R Solutions - Advanced R Solutions.
- bookdown: Authoring Books and Technical - Documents with R Markdown.
- Geocomputation with R - Geocomputation with R.
- knitr - knitr: elegant, flexible, and fast dynamic report generation with R.
- Machine Learning with TensorFlow(R version) - This repository is for practicing R tensorflow modeling exercises.
- R的极客理想-高级开发篇 - R的极客理想-高级开发篇.
- swirl - swirl is a platform for learning (and teaching) statistics and R simultaneously and interactively.
- stats337 - Stats 337: Readings in Applied Data Science.
- Data Science in Education Book - Book on data science (or data analysis) in education using R.
- datascience-box - Data Science Course in a Box.
- R語言翻轉教室 - 全中文R語言互動式教材.
- Statistical Rethinking with brms ggplot2 and the tidyverse - Statistical Rethinking with brms, ggplot2, and the tidyverse.
- DataScienceR - a curated list of R tutorials for Data Science, NLP and Machine Learning.
- MLwR - Machine Learning with R.
- ml-course-r - R code for the assignments of Ng's Coursera machine learning course.
- Book on data science (or data analysis) in education using R - Book on data science (or data analysis) in education using R.
Cheatsheets of Rstudio packages
- RStudio IDE Cheat Sheet - RStudio IDE Cheat Sheet.
- R Markdown Cheat Sheet - R Markdown Cheat Sheet.
- Shiny - Shiny Cheat Sheet.
- Package Development Cheat Sheet - Package Development Cheat Sheet.
- Data Import Cheat Sheet - Data Import Cheat Sheet.
- Data Transformation Cheat Sheet - Data Transformation Cheat Sheet(dplyr).
- Data Visualization Cheat Sheet - Data Visualization Cheat Sheet with ggplot2.
- Apply Functions Cheat Sheet with purrr - Apply Functions Cheat Sheet.
- Deep Learning with Keras Cheat Sheet - Deep Learning with Keras Cheat Sheet.
- Sparklyr Cheat Sheet - Sparklyr Cheat Sheet.
- Work with Strings - Work with Strings Cheat Sheet.
- Dates and times with lubridate - Dates and Times Cheat Sheet.
- Advanced R - Environments, data Structures, Functions, Subsetting and more by Arianne Colton and Sean Chen.
- Caret - Modeling and Machine Learning in R with the caret package by Max Kuhn.
- data.table - Data manipulation with data.table, cheatsheet by Erik Petrovski.
- Base R - Base R.
- cartography - Thematic maps with spatial objects by Timothée Giraud.
- estimatr - Fast, robust estimators for common models.
- eurostat - R tools to access the eurostat database, by rOpenGov.
- h2o - The R interface to h20’s algorithms for big data and parallel computing.
- How big is your graph? - Graph sizing with base R.
- LaTeX - A reference to the LaTeX typesetting language, useful in combination with knitr and R Markdown.
- leaflet - Interactive maps in R with leaflet, by Kejia Shi.
- Machine Learning Modelling - A tabular guide to machine learning algorithms in R, by Arnaud Amsellem.
- mlr - The mlr package offers a unified interface to R’s machine learning capabilities.
- Mosaic - The mosaic package is for teaching mathematics, statistics, computation and modeling.
- nardl - The nardl package estimates the nonlinear cointegrating autoregressive distributed lag model.
- xplain - Explain statistical functions with XML files and xplain.
- Parallel Computation - Parallel computing in R with the parallel, foreach, and future packages. By Ardalan Mirshani.
- quanteda - Quantitative Analysis of Textual Data in R with the quanteda package by Stefan Müller and Kenneth Benoit.
- randomizr - Automate random assignment and sampling with randomizr. By Alex Coppock.
- Regular Expressions - Basics of regular expressions and pattern matching in R by Ian Kopacka.
- Simple Features (sf) - Tools for working with spatial vector data: points, lines, polygons, etc. Cheatsheet by Ryan Garnett.
- sjmisc - dplyr friendly Data and Variable Transformation, by Daniel Lüdecke.
- survminer - Elegant survival plots, by Przemyslaw Biecek.
- Syntax Comparison - Three code styles compared: $, formula, and tidyverse. By Amelia McNamara.
- Teach R - Concise advice on how to teach R or anything else. By Adi Sarid.