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.

  • Auth0 for AI Agents now in GA Icon
    Auth0 for AI Agents now in GA

    Ready to implement AI with confidence (without sacrificing security)?

    Connect your AI agents to apps and data more securely, give users control over the actions AI agents can perform and the data they can access, and enable human confirmation for critical agent actions.
    Start building today
  • Grafana: The open and composable observability platform Icon
    Grafana: The open and composable observability platform

    Faster answers, predictable costs, and no lock-in built by the team helping to make observability accessible to anyone.

    Grafana is the open source analytics & monitoring solution for every database.
    Learn More
  • 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: 30 This Week
    Last Update:
    See Project
  • 2
    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: 19 This Week
    Last Update:
    See Project
  • 3
    Data Science Specialization

    Data Science Specialization

    Course materials for the Data Science Specialization on Coursera

    The Data Science Specialization Courses repository is a collection of materials that support the Johns Hopkins University Data Science Specialization on Coursera. It contains the source code and resources used throughout the specialization’s courses, covering a broad range of data science concepts and techniques. The repository is designed as a shared space for code examples, datasets, and instructional materials, helping learners follow along with lectures and assignments. It spans essential topics such as R programming, data cleaning, exploratory data analysis, statistical inference, regression models, machine learning, and practical data science projects. By providing centralized resources, the repo makes it easier for students to practice concepts and replicate examples from the curriculum. It also offers a structured view of how multiple disciplines—programming, statistics, and applied data analysis—come together in a professional workflow.
    Downloads: 14 This Week
    Last Update:
    See Project
  • 4
    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: 6 This Week
    Last Update:
    See Project
  • Free and Open Source HR Software Icon
    Free and Open Source HR Software

    OrangeHRM provides a world-class HRIS experience and offers everything you and your team need to be that HR hero you know that you are.

    Give your HR team the tools they need to streamline administrative tasks, support employees, and make informed decisions with the OrangeHRM free and open source HR software.
    Learn More
  • 5
    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: 5 This Week
    Last Update:
    See Project
  • 6
    gt R

    gt R

    Easily generate information-rich, publication-quality tables from R

    With the gt package, anyone can make wonderful-looking tables using the R programming language. The gt philosophy: we can construct a wide variety of useful tables with a cohesive set of table parts. These include the table header, the stub, the column labels and spanner column labels, the table body, and the table footer. It all begins with table data (be it a tibble or a data frame). You then decide how to compose your gt table with the elements and formatting you need for the task at hand. Finally, the table is rendered by printing it at the console, including it in an R Markdown document, or exporting it to a file using gtsave(). Currently, gt supports the HTML, LaTeX, and RTF output formats.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 7
    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: 4 This Week
    Last Update:
    See Project
  • 8
    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: 4 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
  • The integrated business platform for running a profitable MSP Icon
    The integrated business platform for running a profitable MSP

    PSA, RMM and remote access in one affordable package

    Stay on top of client systems with remote monitoring of unlimited PC and Mac assets, automated alert remediation, scripting, patch management + more.
    Learn More
  • 10
    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: 4 This Week
    Last Update:
    See Project
  • 11
    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: 3 This Week
    Last Update:
    See Project
  • 12
    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: 3 This Week
    Last Update:
    See Project
  • 13
    IRkernel

    IRkernel

    R kernel for Jupyter

    For detailed requirements and install instructions see irkernel.github.io. Per default IRkernel::installspec() will install a kernel with the name “ir” and a display name of “R”. Multiple calls will overwrite the kernel with a kernel spec pointing to the last R interpreter you called that commands from. You can install kernels for multiple versions of R by supplying a name and display name argument to the install spec() call (You still need to install these packages in all interpreters you want to run as a Jupyter kernel!):
    Downloads: 3 This Week
    Last Update:
    See Project
  • 14
    TinyTeX

    TinyTeX

    Cross-platform, portable, and easy-to-maintain LaTeX distribution

    A lightweight, cross-platform, portable, and easy-to-maintain LaTeX distribution based on TeX Live. TinyTeX, is a custom LaTeX distribution based on TeX Live that is small in size but still functions well in most cases. Even if you run into the problem of missing LaTeX packages, it should be super clear to you what you need to do. In fact, if you are an R Markdown user, there is nothing you need to do, because missing packages will just be installed automatically. You may not even know the existence of LaTeX at all since it should rarely bother you. Currently, TinyTeX works best for R users. Other users can use it, too—it is just that missing LaTeX packages won’t be automatically installed, and you need to install them manually. Or you can go to the extreme to install all packages, but remember there are thousands of them.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 15
    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: 3 This Week
    Last Update:
    See Project
  • 16
    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: 3 This Week
    Last Update:
    See Project
  • 17
    LabPlot

    LabPlot

    Data Visualization and Analysis

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

    JuliaConnectoR

    A functionally oriented interface for calling Julia from R

    This R-package provides a functionally oriented interface between R and Julia. The goal is to call functions from Julia packages directly as R functions. Julia functions imported via the JuliaConnectoR can accept and return R variables. It is also possible to pass R functions as arguments in place of Julia functions, which allows callbacks from Julia to R. From a technical perspective, R data structures are serialized with an optimized custom streaming format, sent to a (local) Julia TCP server, and translated to Julia data structures by Julia. The results of function calls are likewise translated back to R. Complex Julia structures can either be used by reference via proxy objects in R or fully translated to R data structures.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 19
    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: 2 This Week
    Last Update:
    See Project
  • 20
    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: 2 This Week
    Last Update:
    See Project
  • 21
    Statistical Rethinking 2023

    Statistical Rethinking 2023

    Statistical Rethinking Course for Jan-Mar 2023

    The 2023 edition modernizes and expands on the same curriculum, adjusting exercises and code for newer versions of R, Stan, and supporting packages. It continues to provide scripts for lectures and tutorials, while integrating refinements to examples, notation, and computational workflows introduced that year. Compared with 2022, some models are rewritten for clarity, and teaching materials reflect refinements in McElreath’s evolving presentation of Bayesian data analysis. Students following the 2023 lecture videos use this repository as their coding reference. There are 10 weeks of instruction. Links to lecture recordings will appear in this table. Weekly problem sets are assigned on Fridays and due the next Friday, when we discuss the solutions in the weekly online meeting.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 22
    geocompr

    geocompr

    Geocomputation with R: an open source book

    This repository hosts the source for Geocomputation with R, an open-source book covering spatial data analysis, visualization, and modeling using R. It teaches how to work with vector and raster data, coordinate systems, mapping, and geocomputation techniques using packages like sf, terra, tmap, and more. Actively maintained and updated for real-world geospatial workflows.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 23
    plumber

    plumber

    Turn your R code into a web API

    plumber is an R package that enables rapid creation of HTTP APIs by decorating existing R functions with special roxygen-style comments. It transforms R scripts into RESTful web services with minimal setup and integrates easily with RStudio or CI environments.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 24
    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: 2 This Week
    Last Update:
    See Project
  • 25
    tidyr

    tidyr

    Tidy Messy Data

    tidyr is a core tidyverse package designed to help reshape and clean messy datasets into tidy data—i.e., data frames where each variable is a column, each observation is a row, and each value is a cell.
    Downloads: 2 This Week
    Last Update:
    See Project