Code Monkey home page Code Monkey logo

awesome-r's Introduction

Awesome R

Awesome

A curated list of awesome R packages and tools. Inspired by awesome-machine-learning.

heart for Top 50 CRAN downloaded packages or repos with 400+ star

2023

2020

  • VSCode - vscode-R + vscode-r-lsp VSCode R Langauage Support
  • gt - Easily generate information-rich, publication-quality tables from R
  • lightgbm heart - Light Gradient Boosting Machine.
  • torch - Tensors and Neural Networks with 'GPU' Acceleration.

2019

  • ggforce - ggplot2 extension framework ggforce
  • rayshader - 2D and 3D data visualizations via rgl rayshader
  • vroom - Fast reading of delimited files vroom

Integrated Development Environments

Integrated Development Environment

  • VSCode heart - vscode-R + vscode-r-lsp VSCode R Langauage Support
  • RStudio heart - 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-IDE - Add-on package for Sublime Text 2/3.
  • TextMate + r.tmblundle - Add-on package for TextMate 1/2.
  • StatET - An Eclipse based IDE for R.
  • R Commander - A package that provides a basic graphical user interface.
  • IRkernel heart - 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.
  • Nvim-R heart - 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.
  • radian heart (formerly rtichoke) - A modern R console with syntax highlighting.
  • RKWard - An extensible IDE/GUI for R.

Syntax

Packages change the way you use R.

  • magrittr heart - Let's pipe it.
  • pipeR - Multi-paradigm Pipeline Implementation.
  • lambda.r - Functional programming and simple pattern matching in R.
  • purrr - A FP package for R in the spirit of underscore.js.

Data Manipulation

Packages for cooking data.

  • dplyr heart - Fast data frames manipulation and database query.
  • data.table heart - Fast data manipulation in a short and flexible syntax.
  • reshape2 heart - Flexible rearrange, reshape and aggregate data.
  • tidyr - Easily tidy data with spread and gather functions.
  • broom heart - Convert statistical analysis objects into tidy data frames.
  • rlist - A toolbox for non-tabular data manipulation with lists.
  • ff - Data structures designed to store large datasets.
  • lubridate - A set of functions to work with dates and times.
  • stringi heart - ICU based string processing package.
  • stringr heart - Consistent API for string processing, built on top of stringi.
  • bigmemory - Shared memory and memory-mapped matrices. The big* packages provide additional tools including linear models (biglm) and Random Forests (bigrf).
  • fuzzyjoin - Join tables together on inexact matching.
  • tidyverse - Easily install and load packages from the tidyverse.
  • snakecase - Automatically parse and convert strings into cases like snake or camel among others.
  • DataExplorer - Fast exploratory data analysis with minimum code.

Data Formats

Packages for reading and writing data of different formats.

  • arrow heart - An interface to the Arrow C++ library.
  • feather heart - Fast, interoperable binary data frame storage for Python, R, and more powered by Apache Arrow.
  • fst heart - Lightning Fast Serialization of Data Frames for R.
  • haven - Improved methods to import SPSS, Stata and SAS files in R.
  • jsonlite - A robust and quick way to parse JSON files in R.
  • qs - Quick serialization of R objects.
  • readxl heart - Read excel files (.xls and .xlsx) into R.
  • readr heart - A fast and friendly way to read tabular data into R.
  • rio - A Swiss-Army Knife for Data I/O.
  • readODS - Read OpenDocument Spreadsheets into R as data.frames.
  • RcppTOML - Rcpp Bindings to C++ parser for TOML files.
  • vroom - Fast reading of delimited files.
  • writexl - Portable, light-weight data frame to xlsx exporter for R.
  • yaml - R package for converting objects to and from YAML.

Graphic Displays

Packages for showing data.

  • ggplot2 heart - An implementation of the Grammar of Graphics.
  • ggfortify - A unified interface to ggplot2 popular statistical packages using one line of code.
  • ggrepel - Repel overlapping text labels away from each other.
  • ggalt - Extra Coordinate Systems, Geoms and Statistical Transformations for ggplot2.
  • ggstatsplot - ggplot2 Based Plots with Statistical Details
  • ggtree - Visualization and annotation of phylogenetic tree.
  • ggtech - ggplot2 tech themes and scales
  • ggplot2 Extensions - Showcases of ggplot2 extensions.
  • lattice - A powerful and elegant high-level data visualization system.
  • 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.
  • extrafont - Tools for using fonts in R graphics.
  • showtext - Enable R graphics device to show text using system fonts.
  • animation - A simple way to produce animated graphics in R, using ImageMagick.
  • 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.
  • hrbrthemes - 🔏 Opinionated, typographic-centric ggplot2 themes and theme components.
  • waffle - 🍁 Make waffle (square pie) charts in R.
  • dendextend - visualizing, adjusting and comparing trees of hierarchical clustering.
  • idendro - interactive exploration of dendrograms (trees of hierarchical clustering).
  • r2d3 - R Interface to D3 Visualizations
  • Patchwork - Combine separate ggplots into the same graphic.
  • plot3D - Plotting Multi-Dimensional Data
  • plot3Drgl - Plotting Multi-Dimensional Data - Using 'rgl'
  • httpgd - Asynchronous http server graphics device for R.

HTML Widgets

Packages for interactive visualizations.

  • heatmaply - Interactive heatmaps with D3.
  • d3heatmap - Interactive heatmaps with D3 (no longer maintained).
  • DataTables - Displays R matrices or data frames as interactive HTML tables.
  • DiagrammeR heart - Create JS graph diagrams and flowcharts in R.
  • dygraphs - Charting time-series data in R.
  • formattable heart - Formattable Data Structures.
  • ggvis heart - 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.
  • scatterD3 - Interactive scatterplots with D3.
  • plotly heart - Interactive ggplot2 and Shiny plotting with plot.ly.
  • rCharts heart - Interactive JS Charts from R.
  • rbokeh - R Interface to Bokeh.
  • threejs - Interactive 3D scatter plots and globes.
  • timevis - Create fully interactive timeline visualizations.
  • visNetwork - Using vis.js library for network visualization.
  • wordcloud2 - R interface to wordcloud2.js.
  • highcharter - R wrapper for highcharts based on htmlwidgets
  • echarts4r - R wrapper to Echarts version 4

Reproducible Research

Packages for literate programming and reproducible workflows.

  • knitr heart - Easy dynamic report generation in R.
  • redoc - Reversible Reproducible Documents
  • tinytex - A lightweight and easy-to-maintain LaTeX distribution
  • xtable - Export tables to LaTeX or HTML.
  • rapport - An R templating system.
  • rmarkdown heart - Dynamic documents for R.
  • slidify heart - Generate reproducible html5 slides from R markdown.
  • Sweave - A package designed to write LaTeX reports using R.
  • texreg - Formatting statistical models in LaTex and HTML.
  • 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.
  • 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.

  • Web Technologies List - Information about how to use R and the world wide web together.
  • shiny heart - Easy interactive web applications with R. See also awesome-rshiny
  • shinyjs - Easily improve the user interaction and user experience in your Shiny apps in seconds.
  • RCurl - General network (HTTP/FTP/...) client interface for R.
  • curl - A Modern and Flexible Web Client for R.
  • httr heart - User-friendly RCurl wrapper.
  • httpuv - HTTP and WebSocket server library.
  • XML heart - Tools for parsing and generating XML within R.
  • xml2 heart - Optimized tools for parsing and generating XML within R.
  • rvest heart - Simple web scraping for R, using CSSSelect or XPath syntax.
  • OpenCPU heart - 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.
  • Rfacebook - Access to Facebook API via R.
  • RSiteCatalyst - R client library for the Adobe Analytics.
  • 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 heart - Executing the loop in parallel.
  • future heart - A minimal, efficient, cross-platform unified Future API for parallel and distributed processing in R; designed for beginners as well as advanced developers.
  • SparkR heart - R frontend for Spark.
  • DistributedR - A scalable high-performance platform from HP Vertica Analytics Team.
  • 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 heart - Rcpp provides a powerful API on top of R, make function in R extremely faster.
  • Rcpp11 - Rcpp11 is a complete redesign of Rcpp, targetting C++11.
  • compiler - speeding up your R code using the JIT
  • 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.
  • jvmr - Integration of R, Java, and Scala.
  • reticulate heart - Interface to 'Python'.
  • rJython - R interface to Python via Jython.
  • rPython - Package allowing R to call Python.
  • runr - Run Julia and Bash from R.
  • RJulia - R package Call Julia.
  • 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.
  • RcppOctave - Seamless Interface to Octave and Matlab.
  • RSPerl - A bidirectional interface for calling R from Perl and Perl from R.
  • 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.
  • DBI - Defines a common interface between the R and database management systems.
  • elastic - Wrapper for the Elasticsearch HTTP API
  • mongolite - Streaming Mongo Client for R
  • odbc - Connect to ODBC databases (using the DBI interface)
  • 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.
  • 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.
  • rmongodb - R driver for MongoDB.
  • redux - Redis client for R.
  • RCassandra - Direct interface (not Java) to the most basic functionality of Apache Cassandra.
  • RHive - R extension facilitating distributed computing via Apache Hive.
  • RNeo4j - Neo4j graph database driver.
  • rpostgis - R interface to PostGIS database and get spatial objects in R.

Machine Learning

Packages for making R cleverer.

  • anomalize - Tidy Anomaly Detection using Twitter's AnomalyDetection method.
  • AnomalyDetection heart - 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
  • BreakoutDetection heart - Breakout Detection via Robust E-Statistics from Twitter.
  • bst - Gradient Boosting
  • CausalImpact heart - Causal inference using Bayesian structural time-series models.
  • C50 - C5.0 Decision Trees and Rule-Based Models
  • caret heart - Classification and Regression Training
  • 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 models
  • prophet heart - 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 heart - 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 heart - 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 heart - Light Gradient Boosting Machine.
  • lme4 heart - Mixed-effects models
  • nlme heart - 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
  • Machine Learning For Hackers heart
  • mlr - Extensible framework for classification, regression, survival analysis and clustering [DEPRECIATED]
  • mlr3 heart - Next generation extensible framework for classification, regression, survival analysis and clustering
  • mvpart - Multivariate partitioning
  • MXNet heart - 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).
  • 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
  • SuperLearner and subsemble - Multi-algorithm ensemble learning packages.
  • 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
  • xgboost heart - eXtreme Gradient Boosting Tree model, well known for its speed and performance.

Natural Language Processing

Packages for Natural Language Processing.

  • 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.
  • 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.
  • quanteda - R functions for Quantitative Analysis of Textual Data.
  • Topic Models Resources - Topic Models learning and R related resources.
  • NLP for :cn: - NLP related resources in R. @Chinese
  • MonkeyLearn - 🐒 R package for text analysis with Monkeylearn 🐒.
  • tidytext - Implementing tidy principles of Hadley Wickham to text mining.
  • 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 heart - 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 heart - 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 heart - 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.
  • scorecard - Credit Risk Scorecard

Bioinformatics and Biostatistics

Packages for processing biological datasets.

  • Bioconductor heart - 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.
  • 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.

  • Network Analysis List - Network Analysis related resources.
  • igraph heart - A collection of network analysis tools.
  • network - Basic tools to manipulate relational data in R.
  • sna - Basic network measures and visualization tools.
  • 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.
  • visNetwork - Using vis.js library for network visualization.
  • 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.
  • ggmap - Plotting maps in R with ggplot2.
  • 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
  • gstat - Spatial and spatio-temporal geostatistical modelling, prediction and simulation.
  • spacetime - R classes and methods for spatio-temporal data.
  • RColorBrewer - Provides color schemes for maps
  • spatstat - Spatial Point Pattern Analysis, Model-Fitting, Simulation, Tests
  • spdep - Spatial Dependence: Weighting Schemes, Statistics and Models
  • tigris - Download and use Census TIGER/Line shapefiles in R
  • GWmodel - Geographically-Weighted Models
  • tmap - R package for thematic maps

R Development

Packages for packages.

  • Package Development List - R packages to improve package development.
  • promises - Abstractions for Promise-Based Asynchronous Programming
  • devtools heart - Tools to make an R developer's life easier.
  • testthat heart - An R package to make testing fun.
  • R6 heart - simpler, faster, lighter-weight alternative to R's built-in classes.
  • pryr heart - Make it easier to understand what's going on in R.
  • roxygen heart - Describe your functions in comments next to their definitions.
  • lineprof - Visualise line profiling results in R.
  • renv heart - 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.
  • box heart - A modern module system for R.
  • Rocker heart - R configurations for Docker.
  • RStudio Addins - List of RStudio addins.
  • drat - Creation and use of R repositories on GitHub or other repos.
  • covr - Test coverage for your R package and (optionally) upload the results to coveralls or codecov.
  • lintr - Static code analysis for R to enforce code style.
  • staticdocs - Generate static html documentation for an R package.
  • sinew - Generate roxygen2 skeletons populated with information scraped from the function script.

Logging

Packages for Logging

  • futile.logger - A logging package in R similar to log4j
  • log4r - A log4j derivative for R
  • logging - A logging package emulating the python logging package.

Data Packages

Handy Data Packages

  • 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.
  • ICON - complex systems & networks datasets from the Index of COmplex Networks (ICON) database webpage.
  • RCOBOLDI - Import COBOL CopyBook data files directly into R as properly structured data frames. Package builds are available via Drat and DockerHub.

Other Tools

Handy Tools for R

  • 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.
  • rho - Refactor the interpreter of the R language into a fully-compatible, efficient, VM for R.
  • riposte - a fast interpreter and JIT for R.
  • TERR - TIBCO Enterprise Runtime for R.

Learning R

Packages for Learning R.

  • swirl heart - An interactive R tutorial directly in your R console.
  • DataScienceR heart - 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

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

Podcasts

Reference Cards

MOOCs

Massive open online courses.

Lists

Great resources for learning domain knowledge.

R Ecosystems

R communities and package collections (in alphabetical order):

2018

  • fable - univariate and multivariate time series forecasting models fable
  • r2d3 - R Interface to D3 Visualizations r2d3
  • rstats-ed - List of courses teaching R
  • promises - Abstractions for Promise-Based Asynchronous Programming promises
  • tinytex - A lightweight and easy-to-maintain LaTeX distribution tinytex
  • Readings in Applied Data Science - These readings reflect Hadley's personal thoughts about applied data science.

2017

  • prophet - Tool for producing high quality forecasts for time series data that has multiple seasonality with linear or non-linear growth.
  • tidyverse - Easily install and load packages from the tidyverse
  • purrr - A functional programming toolkit for R
  • hrbrthemes - 🔏 Opinionated, typographic-centric ggplot2 themes and theme components
  • xaringan - Create HTML5 slides with R Markdown and the JavaScript library
  • blogdown - Create Blogs and Websites with R Markdown
  • glue - Glue strings to data in R. Small, fast, dependency free interpreted string literals.
  • covr - Test coverage reports for R
  • lintr - Static Code Analysis for R
  • reprex - Render bits of R code for sharing, e.g., on GitHub or StackOverflow.
  • reticulate - R Interface to Python
  • tensorflow - TensorFlow for R
  • utf8 - Manipulating and printing UTF-8 text that fixes multiple bugs in R's UTF-8 handling.
  • Patchwork - Combine separate ggplots into the same graphic.

Other Awesome Lists

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

awesome-r's People

Contributors

qinwf avatar 4562448 avatar zero323 avatar renkun-ken avatar qinwf-nuan avatar briatte avatar mattsandy avatar talgalili avatar vnijs avatar hugesingleton avatar hetong007 avatar shivam-saini avatar randy3k avatar mllg avatar katrinleinweber avatar katiejolly avatar j450h1 avatar howiehao avatar brunovilar avatar alperyilmaz avatar thospfuller avatar tazinho avatar taiyun avatar sainathadapa avatar romantsegelskyi avatar haozeke avatar rsaporta avatar rrrlw avatar lethalbrains avatar spekulatius avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.