Training Course Details

Advanced R Programming

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 significant time discussing why and where these methods are used. By the end of the course, participants will be able to use OOP within their own code.

No Events Currently Scheduled

Sorry, there are no upcoming events for this course, but please get in touch if you would like to be kept informed when events are scheduled in the future.

View our full training course calendar »

Course Details

  • Course Outline
  • Learning Outcomes
  • Materials
  • Prior Knowledge

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

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


  • Example course material for 'Advanced R Programming
  • Example course material for 'Advanced R Programming
  • Example course material for 'Advanced R Programming
  • Example course material for 'Advanced R Programming
  • Example course material for 'Advanced R Programming

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!

Attendee Feedback