Open Source R Software

R Software

R Clear Filters

Browse free open source R Software and projects below. Use the toggles on the left to filter open source R Software by OS, license, language, programming language, and project status.

  • Custom VMs From 1 to 96 vCPUs With 99.95% Uptime Icon
    Custom VMs From 1 to 96 vCPUs With 99.95% Uptime

    General-purpose, compute-optimized, or GPU/TPU-accelerated. Built to your exact specs.

    Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
    Start Free
  • Ship Agents Faster Icon
    Ship Agents Faster

    Transform your applications and workflows into powerful agentic systems at global scale.

    Gemini Enterprise Agent Platform lets you rapidly build, scale, govern and optimize production-ready agents grounded in your organization's data. The platform enables developers to build custom or pre-built agents for virtually any use case. New customers get $300 in free credits.
    Start Free
  • 1
    ggplot2

    ggplot2

    An implementation of the Grammar of Graphics in R

    ggplot2 is a system written in R for declaratively creating graphics. It is based on The Grammar of Graphics, which focuses on following a layered approach to describe and construct visualizations or graphics in a structured manner. With ggplot2 you simply provide the data, tell ggplot2 how to map variables to aesthetics, what graphical primitives to use, and it will take care of the rest. ggplot2 is over 10 years old and is used by hundreds of thousands of people all over the world for plotting. In most cases using ggplot2 starts with supplying a dataset and aesthetic mapping (with aes()); adding on layers (like geom_point() or geom_histogram()), scales (like scale_colour_brewer()), and faceting specifications (like facet_wrap()); and finally, coordinating systems. ggplot2 has a rich ecosystem of community-maintained extensions for those looking for more innovation. ggplot2 is a part of the tidyverse, an ecosystem of R packages designed for data science.
    Downloads: 17 This Week
    Last Update:
    See Project
  • 2
    RStan

    RStan

    RStan, the R interface to Stan

    RStan is the R interface to Stan, a C++ library for statistical modeling and high-performance statistical computation. It lets users specify models in the Stan modeling language (for Bayesian inference), compile them, and perform inference from R. Key inference approaches include full Bayesian inference via Hamiltonian Monte Carlo (specifically the No-U-Turn Sampler, NUTS), approximate Bayesian inference via variational methods, and optimization (penalized likelihood). RStan integrates with Stan’s automatic differentiation library, provides diagnostics, model comparison, posterior predictive checks, etc. It is used in research, applied statistics, and modelling workflows where flexibility and rigor in Bayesian methods are required.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 3
    Introduction to Zig

    Introduction to Zig

    An open, technical and introductory book for the Zig programming lang

    This is the official repository for the book "Introduction to Zig: a project-based Book", written by Pedro Duarte Faria. To know more about the book, check out the About this book section below. You can read the current version of the book in your web browser. The book is built using the publishing system Quarto in conjunction with a little bit of R code (zig_engine.R), which is responsible for calling the Zig compiler to compile and run the Zig code examples.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 4
    gtsummary

    gtsummary

    Presentation-Ready Data Summary and Analytic Result Tables

    gtsummary is an R package for creating elegant, customizable, publication-ready summary tables of datasets and statistical models. It provides concise code to produce demographic tables (tbl_summary()), regression result tables, and more, with flexible styling options for reporting.
    Downloads: 7 This Week
    Last Update:
    See Project
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 5
    pointblank

    pointblank

    Data quality assessment and metadata reporting for data frames

    With the pointblank package it’s really easy to methodically validate your data whether in the form of data frames or as database tables. On top of the validation toolset, the package gives you the means to provide and keep up-to-date with the information that defines your tables. For table validation, the agent object works with a large collection of simple (yet powerful!) validation functions. We can enable much more sophisticated validation checks by using custom expressions, segmenting the data, and by selective mutations of the target table. The suite of validation functions ensures that everything just works no matter whether your table is a data frame or a database table. Sometimes, we want to maintain table information and update it when the table goes through changes. For that, we can use an informant object plus associated functions to help define the metadata entries and present it as a data dictionary.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 6
    DiagrammeR

    DiagrammeR

    Graph and network visualization using tabular data in R

    DiagrammeR is an R package to create, manipulate, and visualize network graphs, flowcharts, diagrams, and more using Graphviz and Mermaid syntax. Integrates with RMarkdown and Shiny apps, supports node/edge traversal, and graph analysis algorithms, making it ideal for documenting processes, causal relationships, or data pipelines.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 7
    httr

    httr

    httr: a friendly http package for R

    httr is superseded: only changes necessary to keep it on CRAN will be made. We recommend using httr2 instead. The aim of httr is to provide a wrapper for the curl package, customized to the demands of modern web APIs. Functions for the most important http verbs: GET(), HEAD(), PATCH(), PUT(), DELETE() and POST(). Automatic connection sharing across requests to the same website (by default, curl handles are managed automatically), cookies are maintained across requests, and an up-to-date root-level SSL certificate store is used. Requests return a standard reponse object that captures the http status line, headers and body, along with other useful information. Support for OAuth 1.0 and 2.0 with oauth1.0_token() and oauth2.0_token(). The demo directory has eight OAuth demos: four for 1.0 (twitter, vimeo, withings and yahoo) and four for 2.0 (facebook, github, google, linkedin). OAuth credentials are automatically cached within a project.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 8
    R4DS (R for Data Science)

    R4DS (R for Data Science)

    R for data science: a book

    “R for Data Science” (r4ds) is the source material (book + examples) by Hadley Wickham et al., intended to teach data science using R and the tidyverse. It covers the workflow from importing data, tidying, transforming, visualizing, modelling, communicating results, and programming in R. The repository contains the source files (Quarto / RMarkdown), example datasets, visualizations, exercises, and all content needed to build the book. Includes many example datasets, diagrams, code samples, and “hands-on” exercises. Comprehensive coverage of data-science workflow: data import, cleaning, transformation, exploration, modelling etc. Includes topics beyond basics: relational data (joins), date/time, strings, working with missing values, visualizing data, etc.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 9
    esquisse

    esquisse

    RStudio add-in to make plots interactively with ggplot2

    The purpose of this add-in is to let you explore your data quickly to extract the information they hold. You can create visualization with {ggplot2}, filter data with {dplyr} and retrieve generated code. This addin allows you to interactively explore your data by visualizing it with the ggplot2 package. It allows you to draw bar plots, curves, scatter plots, histograms, boxplot and sf objects, then export the graph or retrieve the code to reproduce the graph. This addin allows you to interactively explore your data by visualizing it with the ggplot2 package. It allows you to draw bar plots, curves, scatter plots, histograms, boxplot and sf objects, then export the graph or retrieve the code to reproduce the graph.
    Downloads: 4 This Week
    Last Update:
    See Project
  • Train ML Models With SQL You Already Know Icon
    Train ML Models With SQL You Already Know

    BigQuery automates data prep, analysis, and predictions with built-in AI assistance.

    Build and deploy ML models using familiar SQL. Automate data prep with built-in Gemini. Query 1 TB and store 10 GB free monthly.
    Start Free
  • 10
    mathpix

    mathpix

    Query the mathpix API to convert math images to LaTeX

    Query the mathpix API to convert math images to LaTeX.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 11
    rmarkdown

    rmarkdown

    Dynamic Documents for R

    R Markdown is an R package for creating dynamic, reproducible documents that combine code (R, Python, SQL, etc.), results (figures, tables), and narrative text. Built on Knitr and Pandoc, it supports generating HTML, PDF, Word, slideshows, dashboards, and more. It’s widely used in data science and reproducible reporting workflows.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 12
    LabPlot

    LabPlot

    Data Visualization and Analysis

    LabPlot is a FREE, open source and cross-platform Data Visualization and Analysis software accessible to everyone.
    Downloads: 26 This Week
    Last Update:
    See Project
  • 13
    Paper2GUI

    Paper2GUI

    Convert AI papers to GUI

    Convert AI papers to GUI,Make it easy and convenient for everyone to use artificial intelligence technology。让每个人都简单方便的使用前沿人工智能技术 Paper2GUI: An AI desktop APP toolbox for ordinary people. It can be used immediately without installation. It already supports 40+ AI models, covering AI painting, speech synthesis, video frame complementing, video super-resolution, object detection, and image stylization. , OCR recognition and other fields. Support Windows, Mac, Linux systems. Paper2GUI: 一款面向普通人的 AI 桌面 APP 工具箱,免安装即开即用,已支持 40+AI 模型,内容涵盖 AI 绘画、语音合成、视频补帧、视频超分、目标检测、图片风格化、OCR 识别等领域。支持 Windows、Mac、Linux 系统。
    Downloads: 3 This Week
    Last Update:
    See Project
  • 14
    ShinyItemAnalysis

    ShinyItemAnalysis

    Test and Item Analysis via Shiny

    ShinyItemAnalysis is an R package including functions and interactive shiny application for the psychometric analysis of educational tests, psychological assessments, health-related and other types of multi-item measurements, or ratings from multiple raters. Exploration of total and standard scores. Analysis of measurement error and reliability. Analysis of correlation structure and validity. Traditional item analysis. Item analysis with regression models. Item analysis with IRT models. Detection of differential item functioning. Number of toy datasets is available, the interactive application also allows the users to upload and analyze their own data and to automatically generate PDF or HTML reports. All methods include sample R code which is ready to copy and paste into R and run locally. Several toy data sets are ready to use. You can also upload and analyze your own data. ShinyItemAnalysis provides model equations, parameter estimates and their interpretation.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 15
    nichenetr

    nichenetr

    NicheNet: predict active ligand-target links between interacting cells

    nichenetr: the R implementation of the NicheNet method. The goal of NicheNet is to study intercellular communication from a computational perspective. NicheNet uses human or mouse gene expression data of interacting cells as input and combines this with a prior model that integrates existing knowledge on ligand-to-target signaling paths. This allows to predict ligand-receptor interactions that might drive gene expression changes in cells of interest. This model of prior information on potential ligand-target links can then be used to infer active ligand-target links between interacting cells. NicheNet prioritizes ligands according to their activity (i.e., how well they predict observed changes in gene expression in the receiver cell) and looks for affected targets with high potential to be regulated by these prioritized ligands.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 16
    rayshader

    rayshader

    R Package for 2D and 3D mapping and data visualization

    This is an R package designed for producing beautiful and interactive 2D and 3D visualizations — especially maps and terrain renderings — using elevation/gridded data and ray-tracing / hill-shading methods. At its core, rayshader takes a matrix of elevations and applies shading, texture, ambient occlusion, overlays, and light modeling (ray shade, lambertian shading, etc.) to produce realistic relief maps. Users can rotate, zoom, and animate the scenes or script camera trajectories programmatically. It supports outputting high-quality renders via path tracing (using a companion package) and also offers depth-of-field (“cinematic blur”) effects to bring visual focus into scenes. It allows layering relational data (roads, points, polygons) on top of the shaded terrain, so you can combine spatial data overlays with the 3D model. The package can export models to 3D formats like STL or OBJ for 3D printing or external rendering.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 17
    Awesome Network Analysis

    Awesome Network Analysis

    A curated list of awesome network analysis resources

    awesome-network-analysis is a curated list of resources focused on network and graph analysis, including libraries, frameworks, visualization tools, datasets, and academic papers. It covers multiple programming languages and domains like sociology, biology, and computer science. This repository serves as a central reference for researchers, analysts, and developers working with network data.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 18
    ComplexHeatmap

    ComplexHeatmap

    Make Complex Heatmaps

    ComplexHeatmap is an R/Bioconductor package by Zuguang Gu et al. designed to create highly flexible, complex, richly annotated heatmaps and related visualizations. It allows arranging multiple heatmaps, adding annotations, combining heatmaps, customizing colors, layouts, and integrating other plots. Often used in genomics/bioinformatics to show expression, methylation, etc., with sidebars, annotations, clustering, etc. Highly customizable layout: combining different heatmaps, arranging and splitting, dealing with multiple heatmap merges, combining with other plots etc. Integration with Shiny / interactive heatmaps via companion packages (InteractiveComplexHeatmap) to allow interactivity, etc.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 19
    ExData Plotting1

    ExData Plotting1

    Plotting Assignment 1 for Exploratory Data Analysis

    This repository explores household energy usage over time using the “Individual household electric power consumption” dataset from the UC Irvine Machine Learning Repository. The dataset covers nearly four years of minute-level measurements, including power consumption, voltage, current intensity, and detailed sub-metering values for different household areas. For analysis, focus is placed on a two-day period in February 2007, highlighting short-term consumption trends. The data requires careful handling due to its size of more than 2 million rows and coded missing values. By processing the date and time fields into proper formats, it becomes possible to generate clear time-series plots of energy usage. The repository demonstrates effective exploratory data analysis practices in R with a reproducible workflow for transforming raw data into visual insights.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 20
    NYC Taxi Data

    NYC Taxi Data

    Import public NYC taxi and for-hire vehicle (Uber, Lyft)

    The nyc-taxi-data repository is a rich dataset and exploratory project around New York City taxi trip records. It collects and preprocesses large-scale trip datasets (fares, pickup/dropoff, timestamps, locations, passenger counts) to enable data analysis, modeling, and visualization efforts. The project includes scripts and notebooks for cleaning and filtering the raw data, memory-efficient processing for large CSV/Parquet files, and aggregation workflows (e.g. trips per hour, heatmaps of pickups/dropoffs). It also contains example analyses—spatial and temporal visualizations like maps, time-series plots, and hotspot detection—highlighting insights such as patterns of demand, peak times, and geospatial distributions. The repository is often used as a benchmark dataset and example for teaching, benchmarking, and demonstration purposes in the data science and urban analytics communities.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 21
    Open Intro Statistics

    Open Intro Statistics

    An open-source textbook written at the college level

    OpenIntro Statistics is a dynamic take on the traditional curriculum, being successfully used at Community Colleges to the Ivy League. Each chapter's content is in one of the eight chapter folders that start with "ch_". Within each folder, there is a "figures" folder and a "TeX" folder. The TeX folder contains the text files that are used to typeset the chapters in the textbook. In many cases, R code is supplied with figures to regenerate the figure. It will often be necessary to install the "openintro" R package that is available from GitHub (https://github.com/OpenIntroOrg) if you would like to regenerate a figure. Other packages may also occasionally be required.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 22
    ProgrammingAssignment2

    ProgrammingAssignment2

    Repository for Programming Assignment 2 for R Programming on Coursera

    This repository contains the second programming assignment for an R course, focused on caching expensive computations by leveraging R’s scoping rules. The assignment walks you through creating a special matrix object that stores both a matrix and its cached inverse, avoiding repeated calls to costly operations. It builds on a worked example that caches the mean of a numeric vector, demonstrating how the operator preserves state across function calls. You then implement analogous logic for matrices via two functions, one to construct the cache-aware object and another to compute or retrieve the cached inverse. The instructions emphasize using solve for inversion and assuming that the supplied matrix is always invertible. The repository outlines the workflow for forking, editing the provided R stub, committing your solution, and submitting your repository URL as the final deliverable.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 23
    blavaan

    blavaan

    An R package for Bayesian structural equation modeling

    blavaan is a free, open-source R package for Bayesian latent variable analysis. It relies on JAGS and Stan to estimate models via MCMC. The blavaan functions and syntax are similar to lavaan. The development version of blavaan (containing updates not yet on CRAN) can be installed via the command provided in the documentation. Compilation is required; this may be a problem for users who currently rely on a binary version of blavaan from CRAN. The blavaan package depends on the lavaan package for model specification and for some computations. This means that, if you already know lavaan, then you should already be able to do many things in blavaan. In particular, many blavaan commands add the letter “b” to the start of the lavaan command. It is also sometimes possible to use a lavaan command on a blavaan object, though the results may not always be what you expect.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 24
    caret

    caret

    caret (Classification And Regression Training) R package

    The caret (Classification And Regression Training) R package streamlines the process of building predictive machine learning models. It provides uniform interfaces for model training, tuning, evaluation, preprocessing, and variable importance. With support for over 200 models, caret is foundational for R workflows in modeling and machine learning.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 25
    covid19model

    covid19model

    Code for modelling estimated deaths and cases for COVID19

    Code for modeling estimated deaths and infections for COVID-19 from "Estimating the effects of non-pharmaceutical interventions on COVID-19 in Europe", Flaxman, Mishra, Gandy et al, Nature, 2020, the published version of our original Report 13. This is the release related to our Tiers paper, where we use the latent factor model to estimate the effectiveness of tiers systems in England. Peer-reviewed version is to be out soon. All other code is still the same for previous releases. The code should be run in full mode to obtain credible results. Not running a full run to estimate anything is not recommended and discouraged. Only a full run should be used to get results.
    Downloads: 2 This Week
    Last Update:
    See Project