Introduction to R
This is a one day intensive course
on R.
This course will be a mixture of lectures and computer
practicals. The main focus will be to introduce fundamental R
concepts.
No prior programming knowledge of any kind is assumed. This
course is suitable for a wide range of applicants e.g.,
biologists, statisticians, engineers, students.
Course outline:
 Introduction to R: A brief overview of the background and features of the R statistical programming system.
 Entering Data: A description of how to import and export data from R.
 Data types: A summary of R's data types.
 R environment: A description of the R environment including the R working directory, creating/using scripts, saving data and results.
 R Graphics: Creating, editing and storing graphics in R.
 Manipulating data in R: Describing how data can be manipulated in R using logical operators.
Course structure
This course will be structured as follows:
 8:30  9:00: Registration and coffee
 9:00  10:30: Lecture
 10:30  11:00: Coffee break
 11:00  12:00: Lecture
 12:00  1:00 Lunch (not provided)
 1:00  2:00 Practical 1
 2:00  2:40: Lecture
 2:40  3:00: Coffee break
 3:00  4:30: Practical 2
These times are intended to give a flavour of how the course
is run and are subject to change.
Comments from previous courses
 Clear explanations; combination of theory and practice is excellent.
 Good pace, good split of practical and lecture.
 Excellent introduction to R!
 Nice friendly environment.
 Almost one to one! Great teaching, good lectures.
Presenter
Dr
Colin Gillespie, Statistics Lecturer in the School of
Mathematics &Statistics.
Introduction to statistical modelling in R
This is a one day intensive course on modelling
in R.
This course will be a mixture of lectures and computer
practicals.
Prior knowledge: it will be assumed that participants
are familiar with R. For example, inputting data, basic
visualisation and data frames. Attending the introduction to R
courses will provide a sufficient background. This course is
suitable to a wide range of applicants e.g., biologists,
statisticians, engineers, students.
Course outline:
 Basic hypothesis testing: examples include onesample
ttest, onesample Wilcoxon signedrank test, independent
twosample ttest, MannWhitney test, twosample ttest for paired
samples, Wilcoxon signedrank test.
 ANOVA tables: 1way and 2way tables.
 Simple and multiple linear regression: including model diagnostics.
 Clustering: hierarchical clustering, kmeans.
 Principal components analysis: plotting and scaling data
Course structure
This course will be structured as follows:
 8:30  9:00: Registration and coffee
 9:00  10:15: Lecture
 10:15  10:45: Lecture
 10:45  12:15: Practical 1
 12:15  1:15: Lunch (not provided)
 1:15  2:40: Lecture
 2:40  3:00: Coffee
 3:00  4:30: Practical 2
These times are intended to give a flavour of
how the course is run and are subject to
change.
Comments from previous courses
 The balance between lectures and practicals was good.
 Great help during the practicals.
 High quality lecture materials.
Presenter
Dr
Colin Gillespie, Statistics Lecturer in the School of
Mathematics &Statistics.
Programming with R
This is a one day intensive course on R. The course
will be a mixture of lectures and computer practicals. The main
focus of the course is R programming techniques, such as functions,
for loops and conditional expressions.
The course follows on from the Introduction to R course. It
is assumed that all students have attended this course (or have
equivalent skills). This course is suitable to a wide range of
applicants e.g., biologists, statisticians, engineers,
students.
Course outline
 Vector operations: details of R's vectors operations.
 Conditionals: using "if" and "else" statements in R
 Functions: what is function is, how are they used,
and how can we construct our own functions.
 Looping in R: an introduction to the concept of looping in R. In particular "for" and "while" loops.
 The apply functions: apply, tapply and other
members of the apply family.
Course structure
This course will be structured as follows:
 8:30  9:00: Registration and coffee
 9:00  10:30: Lecture
 10:30  11:00: Coffee break
 11:00  12:00: Practical 1
 12:00  1:00: Lunch (not provided)
 1:00  2:00: Lecture
 2:00  4:30: Practical 2 (with a coffee break)
These times are intended to give a flavour of how the course
is run and are subject to change.
Comments from previous courses
 We started from the beginning and achieved a lot by the
end. I'm not scared of R anymore. It was actually fun!
 You cover all the aspects that we need to learn to get
started.
Presenter
Dr Colin Gillespie, Statistics Lecturer in the School of Mathematics &Statistics.
Advanced programming
This is a two day intensive course on R. The
course will be a mixture of lectures and computer practicals. The
main focus of the course is advanced R programming techniques,
such as S3/S4 objects, reference classes and function
closures.
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 to a wide range of
applicants e.g. biologists, statisticians, engineers,
students.
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
Presenter
Dr
Colin Gillespie, Statistics Lecturer in the School of
Mathematics &Statistics.
Advanced graphics
This is a one day intensive course on
advanced graphics with R. The standard plotting
commands in R are known as the Base graphics. In
this course, we cover more advanced graphics
packages  in particular, ggplot2. The ggplot2
package can create very advanced and informative
graphics. For example:
A basic knowledge of R is assumed for this course. In
particular, attendees should be familiar with the topics covered
in the first course.This course will be a mixture of lectures
and computer practicals. The goal is to enable participants to
apply the techniques covered to their own data. This course is
suitable to a wide range of applicants e.g., biologists,
statisticians, engineers, students.
Course outline
 The grammar of graphics
 Mastering the grammar
 Groups, geoms, stats and layers
 Scales, axes and legends
 Facets
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
Comments from previous courses
 Very clear lectures and handouts.
 Good overview of the main topics. Also gave advice on how to find out about other features that may be needed above the standards.
 The ability to ask more general questions about our data in the practical.
Presenter
Dr Colin Gillespie, Statistics Lecturer in the School of Mathematics &Statistics.
Efficient R programming
This is a one day intensive course on efficient R
programming. This course will be a mixture of lectures and
computer practicals.
This course is aimed at anyone who uses R, but wants tips and
techniques on speeding up their code.
Prior knowledge: it will be assumed that participants
are familiar with R. For example, inputting data, basic
visualisation and data frames. Attending the introduction to R
will be sufficient. This course is suitable to a wide range of
applicants e.g. biologists, statisticians, engineers,
students.
Course outline:
 Why is your code slow? Code profiling: which part
of the code should you optimise.
 Efficient data structures: object growth and memory
allocation.
 Avoiding loops: accessing the underlying C code faster.
 Parallel computing: an introduction to multicore
computing.
Course structure
This course will be structured as follows:
 8:30  9:00: Registration and coffee
 9:00  10:30: Lecture
 10:30  11:00: Coffee break
 11:00  12:00: Lecture
 12:00  1:00: Lunch
 1:00  2:00: Practical 2
 2:00  2:40: Lecture
 2:40  3:00: Coffee break
 3:00  4:30: Practical 3
These times are intended to give a flavour of how the course is run and are subject to change.
Presenter
Dr
Colin Gillespie, Statistics Lecturer in the School of
Mathematics & Statistics.
Building an R package
This is a one day intensive course on
building an package. This course will be a
mixture of lectures and computer practicals. The
main focus will be getting a working R package
ready for distribution. It is assumed that all
applicants have a basic knowledge of R.
Course outline:
Participants can bring their own code or they can use the
provided example code to write a fully functional R package.
 Why create an R package.
 What is in an R package.
 Writing documentation with roxygen.
 Creating packages with rstudio.
 Distributing your package.
Participants will need to bring their own laptop.
Course structure
This course will be structured as follows:
 9:00  9:30 Registration and coffee
 9:30  12:15: Lecture & practical session
 12:15  1:15 Lunch (not provided)
 1:15  2:40 Lecture & practical
 2:40  3:00: Coffee break
 3:00  4:30: Practical session
These times are intended to give a flavour of how the course is run and are subject to change.
Presenter
Dr Colin Gillespie, Statistics Lecturer in the School of Mathematics & Statistics.
Five day Bioconductor course
Course outline:
This is a five day intensive course on R and Bioconductor. The course will be a mixture of lectures and computer practicals. The final day provide participants an opportunity to analyse their own data.
No prior programming knowledge of any kind is assumed.
Course structure:
This course will be structured as follows:
 Day 1: Introduction to R
 Standard R data types, base graphics, Manipulating data
 Day 2: Bioconductor input/output
 What is Bioconductor
 Installing packages
 Loading Affymetrix and Illumina data into R
 Data quality checks
 Day 3:
 Object oriented programming in R
 Microarray data analysis including Limma, RankProd
 Day 4: Clustering, ArrayExpress, GO stats
 Day 5: RNAseq and Analysis of participants' data
Presenters
Dr Colin Gillespie, Statistics Lecturer in the School of Mathematics &Statistics.
Dr Simon Cockell, Newcastle Bioinformatics Support Unit
Dr Matthew Bashton, Newcastle Bioinformatics Support Unit