 # Introduction to R programming

Live Classroom
Duration: 3 days
Live Virtual Classroom
Duration: 3 days

## Overview

The Introduction to R programming course helps participants familiarize themselves with concepts like manipulating objects in R, such as, reading data, accessing R packages, writing R functions and creating informative graphs. The course also covers how to analyze data with the help of common statistical models and how to apply the R software on a command line as well as in a Graphical User Interface (GUI). The course combines hands-one exercises and engaging lectures to ensure that the participants get a thorough understanding of the concepts discussed.

## What You'll Learn

• R and available GUIs
• R and statistics
• Data permanency and removing objects
• Objects, modes, attributes
• Arrays
• Matrices
• Lists and dataframes
• R as a set of statistical tables
• Packages and namespaces

## Curriculum

• Making R more friendly, R and available GUIs
• The R environment
• Related software and documentation
• R and statistics
• Using R interactively
• An introductory session
• Getting help with functions and features
• R commands, case sensitivity, etc.
• Recall and correction of previous commands
• Executing commands from or diverting output to a file
• Data permanency and removing objects
• 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 types of objects
• Intrinsic attributes: mode and length
• Changing the length of an object
• Getting and setting attributes
• The class of an object
• A specific example
• The function tapply() and ragged arrays
• Ordered factors
• 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
• Generalized transpose of an array
• Matrix facilities
• Matrix multiplication
• Linear equations and inversion
• Eigenvalues and eigenvectors
• Singular value decomposition and determinants
• Least squares fitting and the QR decomposition
• Forming partitioned matrices, cbind() and rbind()
• The concatenation function, (), with arrays
• Frequency tables from factors
• Lists
• Constructing and modifying lists
• Concatenating lists
• Data frames
• Making data frames
• attach() and detach()
• Working with data frames
• Attaching arbitrary lists
• Managing the search path
• The scan() function
• Accessing built-in data sets
• Editing data
• R as a set of statistical tables
• Examining the distribution of a set of data
• One- and two-sample tests
• Grouped expressions
• Control statements
• Conditional execution: IF statements
• Repetitive execution: FOR loops, REPEAT and WHILE
• Simple examples
• Defining new binary operators
• Named arguments and defaults
• The ‘…’ argument
• Assignments within functions
• Efficiency factors in block designs
• Dropping all names in a printed array
• Recursive numerical integration
• Scope
• Customizing the environment
• Classes, generic functions and object orientation
• Defining statistical models; formulae
• Contrasts
• Linear models
• Generic functions for extracting model information
• Analysis of variance and model comparison
• ANOVA tables
• Updating fitted models
• Generalized linear models
• Families
• The glm() function
• Nonlinear least squares and maximum likelihood models
• Least squares
• Maximum likelihood
• Some non-standard models
• High-level plotting commands
• The plot() function
• Displaying multivariate data
• Display graphics
• Arguments to high-level plotting functions
• Low-level plotting commands
• Mathematical annotation
• Hershey vector fonts
• Interacting with graphics
• Using graphics parameters
• Permanent changes: The par() function
• Temporary changes: Arguments to graphics functions
• Graphics parameters list
• Graphical elements
• Axes and tick marks
• Figure margins
• Multiple figure environment
• Device drivers
• PostScript diagrams for typeset documents
• Multiple graphics devices
• Dynamic graphics
• Standard packages
• Contributed packages and CRAN
• Namespaces ## Who should attend

The course is highly recommended for –
• Developers
• Data scientists
• UI/UX designers and developers
• Software engineers
• Software architects

## Prerequisites

Participants need to have basic programming knowledge.

Get in Touch