R Statistical Language: Introduction & Tutorial

What is the purpose of this tutorial?

The purpose of this tutorial is to introduce the programming language R.  After completing and attending this workshop; the attendees should be able to:

  1. describe the primary purpose of R 
  2. compare the similarities and dissimilarities between a spreadsheet and R
  3. describe factors to the success R and the reasons why it has been adopted with DataSHIELD
  4. appreciate and describe the characteristics of imperative and functional programming languages
  5. explain and make appropriate use of some variables
  6. use R Studio to write some basic R scripts
  7. manipulate some lists, vectors and data frame in R
  8. choose and use some functions for a specific purpose
  9. understand the concepts of libraries

What is the audience of this tutorial?

This tutorial is aimed to wide audience. It has been pitched from users who have never programmed before to some expert programmers in other programming languages.  Some links to some other tutorials and reliable resources have been added. The content is differentiated in three categories of readers and attendees:

  • Beginners: It is assumed the readers have minimal experience yet in programming. The readers are encouraged to complete some additional reading to develop an understanding of basic concepts common to many programming languages
  • Not quite advanced:  The readers have been using some programming languages and have some understanding of many programming concepts. If the readers have yet to focus on the practical aspect of coding, then the author would encourage the reader to deepen their understanding of programming concepts
  • Advanced: The readers have been programming for more than two years in at least two different programming languages. It is assumed they have an in-depth knowledge of advanced programming concepts. 

It is assumed the attendees and the readers have a sound understanding of statistic and perhaps probabilities. 


Variables: In this tutorial, a variable is a storage location paired with a unique identifier; i.e., a name. It is not be confused as an attribute that describes an idea, a person or an object (i.e., statistics). 

A special thanks

  • To Alex Westerberg and Elaine Smith for making possible to organise this workshop.
  • To Becca Wilson, for producing the original content of this tutorial. Without the invaluable examples, this tutorial would not be as comprehensive.
  • To Hasan Adel Jawal Khalil Al Radhi for going through the whole course and suggesting so many improvements. The course has benefited so much from it.  
  • To Heather Parker, for  printing the course material each time the tutorial has been delivered. 

What can I learn next?

What is R programming language?

DataSHIELD Wiki by DataSHIELD is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. Based on a work at http://www.datashield.ac.uk/wiki