Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Day 1
Introduction and preliminaries
- Making R more user-friendly: R and available graphical user interfaces (GUIs)
- RStudio
- Related software and documentation
- R and statistics
- Interactive use of R
- An introductory session
- Obtaining help on functions and features
- R commands, case sensitivity, and related considerations
- Recalling and correcting previous commands
- Executing commands from or redirecting output to a file
- Data permanence and object removal
Simple manipulations: numbers and vectors
- Vectors and assignment
- Vector arithmetic
- Generating regular sequences
- Logical vectors
- Missing values
- Character vectors
- Index vectors: selecting and modifying subsets of a data set
- Other object types
Objects, their modes, and attributes
- Intrinsic attributes: mode and length
- Changing an object's length
- Retrieving and setting attributes
- The class of an object
Ordered and unordered factors
- A specific example
- The tapply() function and ragged arrays
- Ordered factors
Arrays and matrices
- Arrays
- Array indexing: subsections of an array
- Index matrices
- The array() function
- Mixed vector and array arithmetic: the recycling rule
- The outer product of two arrays
- Generalised transpose of an array
- Matrix facilities
- Matrix multiplication
- Linear equations and inversion
- Eigenvalues and eigenvectors
- Singular value decomposition and determinants
- Least squares fitting and QR decomposition
- Forming partitioned matrices using cbind() and rbind()
- The concatenation function with arrays
- Frequency tables derived from factors
Day 2
Lists and data frames
- Lists
- Constructing and modifying lists
- Concatenating lists
- Data frames
- Creating data frames
- Using attach() and detach()
- Working with data frames
- Attaching arbitrary lists
- Managing the search path
Data manipulation
- Selecting, subsetting observations and variables
- Filtering and grouping
- Recoding and transformations
- Aggregation and combining data sets
- Character manipulation using the stringr package
Reading data
- Text files
- CSV files
- XLS and XLSX files
- SPSS, SAS, Stata, and other data formats
- Exporting data to TXT, CSV, and other formats
- Accessing data from databases using SQL
Probability distributions
- R as a collection of statistical tables
- Examining the distribution of a data set
- One- and two-sample tests
Grouping, loops, and conditional execution
- Grouped expressions
- Control statements
- Conditional execution: if statements
- Repetitive execution: for loops, repeat, and while
Day 3
Writing your own functions
- Simple examples
- Defining new binary operators
- Named arguments and defaults
- The '...' argument
- Assignments within functions
- More advanced examples
- Efficiency factors in block designs
- Dropping all names in a printed array
- Recursive numerical integration
- Scope
- Customising the environment
- Classes, generic functions, and object orientation
Statistical analysis in R
- Linear regression models
- Generic functions for extracting model information
- Updating fitted models
- Generalised linear models
- Families
- The glm() function
- Classification
- Logistic regression
- Linear discriminant analysis
- Unsupervised learning
- Principal components analysis
- Clustering methods (k-means, hierarchical clustering, k-medoids)
- Survival analysis
- Survival objects in R
- Kaplan-Meier estimate
- Confidence bands
- Cox proportional hazards models with constant covariates
- Cox proportional hazards models with time-dependent covariates
Graphical procedures
- High-level plotting commands
- The plot() function
- Displaying multivariate data
- Display graphics
- Arguments to high-level plotting functions
- Basic visualisation graphs
- Multivariate relations using the lattice and ggplot packages
- Using graphics parameters
- Graphics parameters list
Automated and interactive reporting
- Combining R output with text
- Creating HTML and PDF documents
Requirements
A solid understanding of statistics is required.
21 Hours
Testimonials (3)
That Haytham started with the basics and gave us enough time to do the examples and ensure that we were at the same page before we moved on to the next topic.
Jaco Dreyer - Africa Health Research Institute
Course - R Fundamentals
I enjoyed that it was very hands-on, so we were constantly having the chance to try things on, rather than just sitting listening to a lecture (for example). I felt like I am now able to go away and start using R, which I haven't been able to do before
Kathy Baisley - Africa Health Research Institute
Course - R Fundamentals
Day 1 and Day 2 were really straight forward for me and really enjoyed that experience.