Training Course Details

Advanced R Programming

Course Level: Advanced

This is a two-day intensive course on advanced R programming. The training course will not only cover advanced R programming techniques, such as S3/S4 objects, reference classes and function closures, we will spend a significant time discussing why and where these methods are used. The course will be a mixture of lectures and computer practicals. By the end of the course, participants will be able to use OOP within there own code.


London, UK | December 12, 2019

Click here for price details
Venue Details:
12 Errol Street London, EC1Y 8LX - View on map
December 12, 2019
9.00 am - 5.00 pm
2 days

Course Details

Course Outline

  • Functions:
    • Scoping rules (including lexical scope)
    • The ... argument
    • Functions as first class objects
    • Functions closures and mutable states
    • Argument matching
  • Customising your workspace
    • The .Rprofile and .Renviron files
  • Dealing with errors
    • Messages, warnings and errors
    • Using try and tryCatch effectively
  • S3 classes:
    • Introduction to object-oriented programming
    • Constructing S3 objects
    • Drawbacks
  • S4 and reference classes:
    • Creating and using S4 and reference classes
    • Differences between S3 and S4

View course PDF

Learning Outcomes

By the end of the day participants will…

  • be able to write scripts/functions in a more productive manner using environments, mutable states and R’s scoping rules
  • make their R session as efficient as possible on startup using the .Rprofile and .Renviron files
  • be able to use object oriented programming to their advantage
  • have the skill to use s3 & s4 class objects efficiently and effectively in their own work

Course Structure

This course will be structured as follows:

  • 8:30 — 9:00: Registration and coffee
  • 9:00 — 9:30: Lecture
  • 9:30 — 10:30: Practical 1
  • 10:30 — 11:00: Coffee break
  • 11:00 — 12:15: Lecture
  • 12:15 — 1:30: Lunch
  • 2:45 — 3:15: Coffee break
  • 1:30 — 4:30: Practical 2 & Lecture

These times are intended to give a flavour of how the course is run and are subject to change.


Prior Knowledge

The course follows on from the programming with R course. It is assumed that all students have attended this course (or have equivalent skills). This course is suitable for all fields of work. Previous attendees include biologists, statisticians, accountants, engineers & students, i.e., anyone who uses a spreadsheet!