Introduction to Programming: R for Reproducible Scientific Analysis

QCIF online workshop

February 22nd-25th, 2021

9:00am - 12:30pm each day

Instructors: Paula Martinez, Amanda Miotto, Paul Melloy

Helpers: Angela Mina Vargas, Stéphane Guillou, David Green, Stefano Montanari, William Pinzon Perez, Adewuyi Adeyinka

General Information

Software Carpentry aims to help researchers get their work done in less time and with less pain by teaching them basic research computing skills. This hands-on workshop will cover basic concepts and tools, including program design, version control, data management, and task automation. Participants will be encouraged to help one another and to apply what they have learned to their own research problems.

For more information on what we teach and why, please see our paper "Best Practices for Scientific Computing".

Who: The course is aimed at graduate students and other researchers. You don't need to have any previous knowledge of the tools that will be presented at the workshop.

Where: Virtual workshop taught over Zoom

When: February 22nd-25th, 2021. Add to your Google Calendar.

Requirements: Participants must provide their own computer with a Mac, Linux, or Windows operating system (not a tablet, Chromebook, etc.) and have access to a stable internet connection sufficient for videoconferencing. They should have a few specific software packages installed (listed below).

Contact: Please email for more information.

Code of Conduct

Everyone who participates in Carpentries activities is required to conform to the Code of Conduct.This document also outlines how to report an incident if needed.


Please be sure to complete these surveys before and after the workshop.

Pre-workshop Survey

Post-workshop Survey


Session 1

09:00 Introduction to R and RStudio
10:30 Coffee
10:50 Data structures and data frames
12:30 End session 1

Session 2

09:00 Subsetting data and control flow
10:30 Coffee
10:50 Creating publication-quality graphics
12:30 End session 2

Session 3

09:00 Vectorisation and functions
10:30 Coffee
10:50 Data frame manipulation
12:30 End session 3

Session 4

09:00 Producing reproducible reports
10:30 Coffee
10:50 Writing good software
12:30 END


R for Reproducible Scientific Analysis

  • Working with Vectors and Data Frames
  • Reading and Plotting Data
  • Creating and Using Functions
  • Loops and Conditionals
  • Using R from the Command Line
  • Reference...


To participate in a Software Carpentry workshop, you will need to provide your own computer with reliable internet connection. In addition, you will need access to the software described below and an up-to-date web browser.

We maintain a list of common issues that occur during installation as a reference for instructors that may be useful on the Configuration Problems and Solutions wiki page.


R is a programming language that is especially powerful for data exploration, visualization, and statistical analysis. To interact with R, we use RStudio.

Video Tutorial

Install R by downloading and running this .exe file from CRAN. Also, please install the RStudio IDE. Note that if you have separate user and admin accounts, you should run the installers as administrator (right-click on .exe file and select "Run as administrator" instead of double-clicking). Otherwise problems may occur later, for example when installing R packages.

You can download the binary files for your distribution from CRAN. Or you can use your package manager (e.g. for Debian/Ubuntu run sudo apt-get install r-base and for Fedora run sudo dnf install R). Also, please install the RStudio IDE.