Links to Resources and Knowledge

Links to Resources and Knowledge

Open Source (general)

Page

Description

Open Source Guides

General Open Source Guides like how to contribute, how to start, best practices and much more

The Legal Side of Open Source

The Legal Side of Open Source Guide, details on how to legally use Open Source

Open Source Portal for Clinical Study Evaluations

Collection of open source tools which can be used for clinical study evaluations, including searchable macros and programs

R / RStudio / Shiny / Tidyverse

Page

Description

R Self Assessment

Are you ready for Shiny? Self Assessment Quiz

Using Python with RStudio

Description of using Python with Rstudio

Happy Git with R

Install Git and get it working smoothly with GitHub, in the shell and in the RStudio IDE. Develop a few key workflows that cover your most common tasks. Integrate Git and GitHub into your daily work with R and R Markdown.

The Coprehensive R Archive Network

CRAN is a network of ftp and web servers around the world that store identical, up-to-date, versions of code and documentation for R.

CRAN R Packages

Available CRAN Packages by Name

Download RStudio

RStudio is a set of integrated tools designed to help you be more productive with R. It includes a console, syntax-highlighting editor that supports direct code execution, and a variety of robust tools for plotting, viewing history, debugging and managing your workspace.

Download RStudio Server

RStudio Server enables you to provide a browser based interface to a version of R running on a remote Linux server, bringing the power and productivity of the RStudio IDE to server-based deployments of R.

A Quick introduction to RStudio

RStudio is not R or a “type” of R. It is a program that runs R and provides extra tools that are helpful when writing R code, kind of like how your operating system can run a web browser. This workshop will assume you are using RStudio to interact with R, although everything here can be done without RStudio. Most R users seem to use RStudio and we like it, so we recommend using it.

Installing RStudio for Windows

A guide to installing RStudio for Windows

Setup an RStudio Server in Ubuntu

A concise step-by-step guide to setup a Rstudio Server in Ubuntu Linux. The assumption is made that the server is already setup.

Setup a Shiny Server in AWS (Amazon)

A step-by-step guide to setup a Shiny Server in AWS along with a method that makes publishing apps easier

RStudio Quickstart

Experience RStudio Team using a virtual machine on your desktop. RStudio Team QuickStart VM makes it quick and easy to learn through hands-on experience.

Learning Analytic Administration through a Sandbox

It all starts with sandboxes. Development sandboxes are dedicated safe spaces for experimentation and creativity. A sandbox is a place where you can go to test and break things, without the ramifications of breaking the real, important things. If you’re an analytic administrator who doesn’t have access or means to get a sandbox, I recommend that you consider advocating to change that. Here are just some of the arguments for why sandboxes are a powerful tool for the R admin that you may find helpful.

Tidyverse

The tidyverse is an opinionated collection of R packages designed for data science. All packages share an underlying design philosophy, grammar, and data structures.

RStudio Cloud

Created to make it easy for professionals, hobbyists, trainers, teachers and students to do, share, teach and learn data science using R.

RStudio Cloud Cheatsheets

Cheatsheets for working with popular R packages

RStudio Cloud Guide

Guide to using RStudio Cloud

R Start Here

A Guide to some of the most useful R Packages

GGPLOT Toolbox

Plotting System for R

Radiant

Radiant is an open-source platform-independent browser-based interface for business analytics in R. The application is based on the Shiny package and can be run locally or on a server.

bioCancer: Interactive Multi-OMICS Cancers Data Visualization and Analysis

bioCancer is a platform-independent interface for dynamic interaction with cancer genomics data. The web is implemented in the R language and based on the Shiny package. It runs on any modern Web browser and requires no programming skills, increasing the accessibility to the huge, complex and heterogeneous cancer genomic data.

GGPLOT GUI

This package allows users to visualize their data using an online graphical user interface (GUI) that makes use of R's visualization package ggplot. There are two ways of using this functionality: 1) online, where users can upload their data and visualize it without needing R, by visiting this link: https://site.shinyserver.dck.gmw.rug.nl/ggplotgui/; 2) from within the R-environment (by using the ggplot_shiny() function). In either case, R-code will be provided such that the user can recreate the graphs within the R-environment.

Managing libraries for Rstudio Server

R users have access to thousands of community contributed packages. Most users rely on dozens if not hundreds of packages. Organizing these packages can take a fair amount of administrative effort, especially when multiple versions of R exist across multiple servers. This document lays out a simple strategy for managing packages for a team of analysts on a server.

R Installation and Administration

This is a guide to installation and administration for R. This manual is for R, version 3.6.2 (2019-12-12)

Strategy Maps

Strategies to Reproduce Environments Over Time

Crandash

A live visualization of the most popular R packages

Navigating the R Package Universe

There are more than 11,000 packages on CRAN, and R users must approach this abundance of packages with effective strategies to find what they need and choose which packages to invest time in learning how to use. Our session centered on this issue, with three themes in our discussion.

The lazy and easily distracted report writer: Using rmarkdown and parameterised reports

Mike K Smith presents : My brain is lazy, shallow and easily distracted. Learn how I use notebooks to keep my present-self organised, my future-self up to speed with what I was thinking months ago, and also how I use parameterised reports to share results for both quantitative and non-quantitative audiences across multiple endpoints. I can update and render outputs for a variety of outputs from a single markdown notebook or report. I’ll show you how I organise my work using the tidyverse, use child documents with parameterisation and also how this is served out to my colleagues via RStudio Connect.

A Gentle Guide to Tidy Statistics in R (Part 1)

Thomas Mock

A Gentle Guide to Tidy Statistics in R (Part 2)

Thomas Mock

Installing Older Versions of Packages

You may need to install an older version of a package if the package has changed in a way that is incompatible with the version of R you have installed, or with your R code. You may also need to use an older version of a package if you are deploying an application to a location such as shinyapps.io, Shiny Server , or RStudio Connect where the environment may not allow you to run the latest version of the package. Here are instructions on several methods you can use:

How to install a package of a particular version in R

How to install a package of a particular version in R

sessioninfo

Query and print information about the current R session. It is similar to utils::sessionInfo(), but includes more information about packages, and where they were installed from.

Multiple versions of R

Data scientists prefer using the latest R packages to analyze their data. To ensure a good user experience, you will need a recent version of R running on a modern operating system. If you run R on a production server – and especially if you use RStudio Connect – plan to support multiple versions of R side by side so that your code, reports, and apps remain stable over time. You can support multiple versions of R concurrently by building R from source. Plan to install a new version of R at least once per year on your servers.

tidylog

Tidylog provides feedback about dplyr and tidyr operations. It provides simple wrapper functions for the most common functions, such as filter, mutate, select, and group_by.

xpose

xpose was designed as a ggplot2-based alternative to xpose4. xpose aims to reduce the post processing burden and improve diagnostics commonly associated the development of non-linear mixed effect models.

CRAN Task View: Clinical Trial Design, Monitoring, and Analysis

This task view gathers information on specific R packages for design, monitoring and analysis of data from clinical trials. It focuses on including packages for clinical trial design and monitoring in general plus data analysis packages for a specific type of design. Also, it gives a brief introduction to important packages for analyzing clinical trial data.

The Shiny Cheat Sheet

Quick reference guide for building shiny apps

Shiny Function Reference

Function Reference version 1.4.0

Shiny Widgets Gallery

Shiny Widgets Gallery

How to build a Shiny app

Let’s walk through the steps of building a simple Shiny application. A Shiny application is simply a directory containing an R script called app.R which is made up of a user interface object and a server function. This folder can also contain any any additional data, scripts, or other resources required to support the application.

Build a user Interface

How to build a user interface in Shiny

Gallery

Shiny User Showcase

Scoping Rules for Shiny apps

Where you define objects will determine where the objects are visible. There are three different levels of visibility that you’ll want to be aware of when writing Shiny apps. Some objects are visible within the server code of each user session; other objects are visible in the server code across all sessions (multiple users could use a shared variable); and yet others are visible in the server and the ui code across all user sessions. This document describes how scoping works within a single R process.

The awesomeness that is the global.R file. Or how to clean up your shiny app

Description and use of the global.R file

Build a dynamic UI that reacts to user input

Shiny apps are often more than just a fixed set of controls that affect a fixed set of outputs. Inputs may need to be shown or hidden depending on the state of another input, or input controls may need to be created on-the-fly in response to user input.

More Shiny Examples

More Shiny Examples

Enterprise-ready dashboards

Design a Shiny Dashboard

Shiny dashboard

Design a Shiny Dashboard

shinymaterial

Material design in Shiny apps

Alternative Design for Shiny

Most Shiny apps out there have a similar design style. It is usually easy for a seasoned Shiny developer to tell the difference between a Shiny app and a standard website. Why is this? Shiny apps ARE websites for all intents and purposes. Why do they not vary as greatly as the rest of the sites we encounter when surfing the web?

shinydashboardPlus

shinydashboardPlus is based on the idea of ygdashboard, the latter not compatible with shinydashboard (you cannot use shinydashboard and ygdashboard at the same time). With shinydashboardPlus you can still work with the shinydashboard classic functions and enrich your dashboard with all additional functions of shinydashboardPlus!

shinyMixR

The shinyMixR package is initially developed as a graphical interface for the nlmixr package. The package include a shiny (dashboard) interface and helps in managing, running, editing and analysing nlmixr models. Although the main focus was to build an interface, many of the package functions are also directly available for usage in an interactive R session

HTML Templates

In most cases, the best way to create a Shiny application’s user interface is to build it with R code, using functions like fluidPage(), div(), and so on. Sometimes, though, you may want to integrate Shiny with existing HTML, and starting with Shiny 0.13 (and htmltools 0.3), this can be done with the HTML templates. Templates can be used to generate complete web pages, and they can also be used to generate the HTML for components that are included in a Shiny app.

RinteRface

RinteRface aims at bringing the most famous open source HTML templates to R

ggedit – interactive ggplot aesthetic and theme editor

ggedit is a package that helps users bridge the gap between making a plot and getting all of those pesky plot aesthetics just right, all while keeping everything portable for further research and collaboration.

Intro to RStudio Addins and Shiny Gadgets

R is a powerful programming language for statistical computing with many packages and tools. The goal of this article is to arm you with tools and techniques for using addins and gadgets.

ggthemeassist

A RStudio addin for ggplot2 theme tweaking

esqisse

RStudio add-in to make plots with ggplot2

Shiny Debugging

Debugging with Shiny

Debugging Shiny applications

Debugging Shiny applications can be challenging. Because Shiny is reactive, code execution isn’t as linear as you might be used to, and your application code runs behind a web server and the Shiny framework itself, which can make it harder to access. The goal of this article is to arm you with tools and techniques for debugging in Shiny specifically. If you’re interested in tools for debugging R more generally, we recommend reading Debugging with RStudio instead. The Debugging and Exceptions chapter in Hadley Wickham’s excellent book Advanced R is also extremely helpful if you’re new to debugging in R.

Profiling with RStudio

Guide to Profiling with RStudio

Debugging in RStudio

Debugging techniques in RStudio

Building Shiny Apps: With Great Power Comes Great Responsibility

Presentation on building and testing Shiny Apps

Getting started with shinytest

After you get your Shiny application to a state where it works, it’s often useful to have an automated system that checks that it continues to work as expected.

Testing Shiny applications with Shinytest

Testing Shiny applications with Shinytest

Articles

List of RStudio Shiny Articles that go through start to finish of development

Shiny v1.3.2

Shiny v1.3.2

Reactivity Pt 1

Reactive programming is at the heart of the Shiny framework, and thinking reactively is one of the most difficult yet most rewarding aspects of learning Shiny. This tutorial will go beyond the basics, explaining the philosophy behind Shiny’s reactive programming framework and exploring patterns and techniques for using it well.

Reactivity Pt 2

Reactive programming is at the heart of the Shiny framework, and thinking reactively is one of the most difficult yet most rewarding aspects of learning Shiny. This tutorial will go beyond the basics, explaining the philosophy behind Shiny’s reactive programming framework and exploring patterns and techniques for using it well.

Shiny in production: Principles, practices, and tools

Shiny is a web framework for R, a language not traditionally known for web frameworks, to say the least. As such, Shiny has always faced questions about whether it can or should be used “in production”. In this talk we’ll explore what “production” even means, review some of the historical obstacles and objections to using Shiny for production purposes, and discuss practices and tools that can help your Shiny apps flourish.

Effective use of Shiny modules in application development

As a Shiny application grows in scale, organizing code into reusable and streamlined components becomes vital to manage future enhancements and avoid unnecessary duplication.

Load Testing Shiny Applications

The shinyloadtest package and the accompanying shinycannon software enable load testing deployed Shiny applications.

golem

A Framework for Building Robust Shiny Apps

shinymeta

The shinymeta R package provides tools for capturing logic in a Shiny app and exposing it as code that can be run outside of Shiny (e.g., from an R console). It also provides tools for bundling both the code and results to the end user

shinymeta

Record and expose Shiny app logic using metaprogramming

Shiny's Holy Grail: Interactivity with reproducibility

Presentation by Joe Cheng useR! 2019

medplot

Functions for drawing graphs in R visualizing medical information

drake

An R-focused pipeline toolkit for reproducibility and high-performance computing

renv

Project environments for R

[https://rstudio.github.io/packrat/ Packrat}

Packrat is a dependency management system for R

Up to Bat with Packrat

Guide to packrat

Lite Intro to Docker / Rocker for R Analysis via Windows Box

Lite Intro to Docker / Rocker for R Analysis via Windows Box

Running RStudio with Docker containers

Running RStudio with Docker containers

Using Docker images with RStudio Server Pro, Launcher, and Kubernetes

Using Docker images with RStudio Server Pro, Launcher, and Kubernetes

It's a Nonlinear World - Interactive Dashboard

"I created a quick plot, that then turned into a R Notebook, that then turned into an interactive dashboard."

R Markdown

R Markdown

Package Vignettes

How to build package vignettes with knitr

rticles

LaTeX Journal Article Templates for R Markdown

Job Scheduling R Markdown Reports via R

Intro to Job Scheduling R Markdown Reports via R

rmd2ppt

Contains examples of R Markdown input and PPT output

Distill for R Markdown

Distill for R Markdown is based on the Distill web framework, which was originally created for use in the Distill Machine Learning Journal. Distill for R Markdown combines the technical authoring features of Distill with R Markdown, enabling a fully reproducible workflow based on literate programming.

xaringan

An R package for creating slideshows with remark.js through R Markdown. The package name xaringan comes from Sharingan, a dōjutsu in Naruto with two abilities: the "Eye of Insight" and the "Eye of Hypnotism". A presentation ninja should have these basic abilities, and I think remark.js may help you acquire these abilities, even if you are not a member of the Uchiha clan

The R Markdown Cheat sheet

The R Markdown cheat sheet is a quick reference guide for writing reports with R Markdown

Flexdashboard for R

flexdashboard: Easy interactive dashboards for R

rmdcss

CSS templates for R Markdown documents

Markdown CSS

A Collection of stylesheets to make generated markdown, or raw HTML, look beautiful

prettydoc

Creating Pretty HTML From R Markdown

scottishsnow

Many reports from 1 RMarkdown file

radix for R Markdown

Radix for R Markdown

Distill for R Markdown

Distill for R Markdown is a web publishing format optimized for scientific and technical communication

Creating a Website

Share a set of Distill articles as a website

Word Up - Gotta Get Up To Get Bookdown

R is a powerful programming language for statistical computing with many packages and tools. The goal of this article is to arm you with tools and techniques for using bookdown and generating word output.

nlmixr

nlmixr: an R package for population PKPD modeling

nlmixrdevelopment

Running PK models with nlmixr

Combining Shiny and R Markdown

R is a powerful programming language for statistical computing with many packages and tools. The goal of this article is to outline some ways to combine Shiny & R Markdown.

gt

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

learnr

Guide to Create Interactive Tutorials from R Markdown documents

Leaflet for R

Leaflet is one of the most popular open-source JavaScript libraries for interactive maps. It’s used by websites ranging from The New York Times and The Washington Post to GitHub and Flickr, as well as GIS specialists like OpenStreetMap, Mapbox, and CartoDB.

rpivotTable

A R wrapper for the great library pivottable

DT

DT: An R interface to the DataTables library

Learning D3

Learning D3

r2d3: R Interface to D3 Visualizations

r2d3: R Interface to D3 Visualizations

Package Development

Package Development for D3

Interactive Plots in Shiny

Interactive Plots in Shiny

RStudio Portfolio Training Exercises

This document will guide you through a series of exercises that will introduce Shiny, Flexdashboards, R Markdown, parameterized reports, and Plumber APIs. These artifacts will be explored in the context of RStudio Connect.

RStudio 1.2 Preview: Reticulated Python

RStudio 1.2 Preview: Reticulated Python

reticulate

R Interface to Python

Reticulated Shiny

Reticulated Shiny

Keras

Keras is a high-level neural networks API developed with a focus on enabling fast experimentation. Being able to go from idea to result with the least possible delay is key to doing good research.

Python 

Page

Description

Using Python with RStudio

Description of using Python with Rstudio

reticulate

R Interface to Python

Reticulated Shiny

Reticulated Shiny

The Ultimate guide to AI, Data Science & Machine Learning, Articles, Cheatsheets and Tutorials ALL in one place

This is a carefully curated compendium of articles & tutorials covering all things AI, Data Science & Machine Learning for the beginner to advanced practitioner. I will be periodically updating this document with popular topics from time to time. My hope is that you find something of use and/or the content will generate ideas for you to pursue.

Machine Learning Mastery

Collection of Links and tutorials for Machine Learning

Git and GitHub

Page

Description

Happy Git with R

Install Git and get it working smoothly with GitHub, in the shell and in the RStudio IDE. Develop a few key workflows that cover your most common tasks. Integrate Git and GitHub into your daily work with R and R Markdown.

Git Handbook

Handbook for Git

Git Cheat Sheets

Reference sheets covering Git commands, features, SVN migrations, and bash. Available in a multiple languages.

Learn Version Control with Git: A step-by-step course for the complete beginner ebook

Version control is an essential tool if you want to be successful in today's web & software world. This book will help you master it with ease.

Git Cheat Sheet

Download our popular cheat sheet for the Git version control system

Git for Subversion Users