Course Overview
Welcome to Toward Reproducibility with R on Biowulf
This course includes a series of four lessons designed for beginner to intermediate R users interested in working with R on Biowulf. The purpose of this course is to introduce the various ways to use R on Biowulf, while emphasizing reproducible practices such as project organization and R package dependency management. This course is not designed for advanced R users.
Course Expectations
This course will include a series of four, 1-hour lessons taught over four weeks. Lessons will be on Thursdays at 1 PM.
Course participants should have beginner level knowledge of working on the Unix command line, Biowulf, and R. While Lesson 1 will provide a refresher in these areas, this course is not recommended for novices.
Biowulf account required
In order to follow along with course lessons, participants are expected to have a Biowulf account. Instructions for obtaining an account can be found here. If you have an account but it has been inactive for more than 60 days, you will need to unlock your account. See instructions to unlock your account here. Email us at ncibtep@nih.gov if you experience any issues.
Course topics
Lesson 1: Introduction to Biowulf, Unix, and R
Lesson 1 will serve as a course introduction and refresher on Unix, Biowulf, and R.
Lesson 2: Getting Started with R on Biowulf
In Lesson 2, partipants will learn about ways to use R on Biowulf. The focus will be on interactively working with R on Biowulf. Two different ways of accessing RStudio will be demonstrated. In addition, there will be a discussion on R modules and setting up custom R libraries.
Lesson 3: R Project Management and renv
Lesson 3 will focus on enhancing reproducibility as you get started using R. In particular, participants will learn how to set up and organize an R project and use the renv
package for R dependency management.
Lesson 4: Submitting R Scripts via command line
Lesson 4 will focus on using R from the command line and submitting R scripts using sbatch
on Biowulf. There will also be a brief discussion on paralellizing R code.