R
R ( http://www.r-project.org/) is an open source software - a well organized and sophisticated package - that facilitates data analysis, modeling, inferential testing and forecasting. It is a user friendly software which allows to create new function commands to solve statistical problems. It runs on a variety of UNIX platforms (and similar systems such as LINUX), Windows and Mac OS.
R is the most preferred open source language for analytics and data science. At Microsoft, R is used by its data scientists, who apply machine learning to data from Bing, Azure, Office, and the Sales, Marketing, and Finance departments. Twitter has been using R for measuring user-experience. On the other hand, the cross-platform compatibility of R and its capacity to handle large and complex data sets make it an ideal tool for academicians to analyze data in their labs.
R can be used for simple calculations, matrix calculations, differential equations, optimisation, statistical analysis, plotting graphs, etc. Also, it is useful to anybody who wishes to undertake extensive statistical computations and data visualization.
The Spoken Tutorials for R series are contributed by Prof. Kannan Moudgalya, IIT Bombay, FOSSEE Fellows 2018 Shaik Sameer and Varshit Dubey, Vidhya Iyer, Madhuri Ganapati, Sudhakar Kumar, M.Tech student IIT Bombay and overall coordination for the series was done by Smita Wangikar from FOSSEE project, IIT Bombay.
Contents
- 1 Introduction to basics of R
- 2 Introduction to data frames in R
- 3 Introduction to RStudio
- 4 Introduction to R script
- 5 Working Directories in RStudio
- 6 Indexing and Slicing Data Frames
- 7 Creating Matrices using Data Frames
- 8 Operations on Matrices and Data Frames
- 9 Merging and Importing Data
- 10 Data Types and Factors
- 11 Lists and its Operations
- 12 Plotting Histograms and Pie Chart
- 13 Plotting Bar Charts and Scatter Plot
- 14 Introduction to ggplot2
- 15 Aesthetic Mapping in ggplot2
Note: Each numbered topic corresponds to a single spoken tutorial. Each bulleted point corresponds to a command or topic that must be covered in the given spoken tutorial.
Introduction to basics of R
- Version of R and RStudio used
- Operating systems on which these run
- Quick intro to R and RStudio
- Resizing the font and window size
- Using
+
,-
,^
,sqrt
- Using
exp
,log
,sin
- Different ways of invoking
log
- Vectors using
seq
andlength
- Using
pi
- Plotting a
sine
function
- Defining more points to get a smooth plot
- Plotting with points and as line
- Introduction to help
Introduction to data frames in R
- Storing captaincy information in vectors
- Constructing a data frame using vectors
- Plotting one vector of a data frame vs. another one
- Adding a vector to a data frame
- Saving a data frame into a csv file
- Preventing the writing of row numbers into the csv file
- Changing the contents of a csv file through a text editor
- Loading a csv file into a data frame
- Accessing the data sets that come with R
Introduction to RStudio
- Features of RStudio
- A look at the windows in RStudio interface:
- Source and Console windows
- Workspace window
- Plots and Files window
- Example to plot a simple data set
- Introduction to packages in R
- How to find the list of packages installed in R
- Installation of R packages in RStudio
- Loading and using R packages
Introduction to R script
- What is an R script
- Features of R script
- How to create and save an R script from the user interface (UI) of RStudio
- Shortcut keys to create an R script
- How to use auto-completion of commands
- How to run an entire script
- How to run a block of a script
- How to add comments
- How to comment an existing line
- How to load one script into another script
Working Directories in RStudio
- What is working directory in R
- How to know current working directory
- How to use
getwd
function
- How to set a working directory from the user interface of RStudio
- How to set a working directory from the Console window of RStudio
- How to use
setwd
function
- How to read and store a csv file in R
- How to use
read.csv
function
- How to view a stored csv file in R
- How to use
View
function
Indexing and Slicing Data Frames
- Shortcut key for assignment operator (
<-
)
- How to perform numeric indexing
- How to extract a row or column from a data frame
- How to retrieve multiple rows from a data frame
- How to combine objects to form a vector
- How to perform logical indexing on a data frame
- How to perform name indexing on a data frame
- How to slice a data frame using
subset
function
- How to select required columns (by name) from a data frame
- How to retrieve data using double square brackets
Creating Matrices using Data Frames
- Data required in a matrix format
- Convert a data frame into a matrix
- Create a matrix with known data
- Add two matrices
- Subtract two matrices
- Multiply two matrices element wise
- Perform true matrix multiplication
- Calculate the transpose of a matrix
- Calculate the determinant of a matrix
Operations on Matrices and Data Frames
- How to find the inverse of a matrix
- How to calculate the sum of elements in a matrix using
for
loop
- How to calculate the sum of elements in a matrix using
sum
function
- How to calculate time elapsed in an operation
- How to find out the sum of rows of a matrix
- How to find out the sum of columns of a matrix
- How to add a new column or row to an existing data-frame
- How to use
cbind
andrbind
function
Merging and Importing Data
- Use of built-in functions in R for exploring a data frame
- Access help in RStudio
- Advantages of merging data frames
- Merge two data frames
- Import data from command line
- Import
xml
file andtxt
file in R
- Import data from user interface of RStudio
Data Types and Factors
- What is an object in R
- Types of R - objects
- What is an atomic vector in R
- Types of atomic vectors
- How to find types of vectors
- Factors in R
- Levels of a factor in R
- Identification of categorical variables
- How to change the type of a vector
- How to change the values of levels
Lists and its Operations
- Lists in R
- Atomic vectors in R
- Difference between atomic vectors and lists in R
- How to create a list
- How to assign names to the elements of a list
- Named list in R
- How to access elements of a list by its index
- How to access an element of a list by its name
- How to access an element of an element of a list
- Combine two different lists
Plotting Histograms and Pie Chart
- How to find the dimensions of a data frame
- Define a histogram
- Plot a histogram in R
- Add labels to the histogram
- Add color to the bins of a histogram
- Change the number of breaks in the histogram
- Define a pie chart
- Plotting a pie chart in R
- Add a label to the pie chart
- Saving the plot as an image
Plotting Bar Charts and Scatter Plot
- What is a bar chart
- Draw a bar chart
- Use the
barplot
function
- Add labels to the bar chart
- Adjust the labels of the bar chart
- What is a scatter plot
- Draw a scatter plot
- Use
plot
function with two objects
- Find the correlation coefficient
- Range of correlation coefficient
Introduction to ggplot2
- Define visualization
- About grammar of graphics - ggplot2
- Use of the
plot
function
- Add labels to a plot
- Change the color and type of plot
- Plot two graphs in the same plot
- Add a legend to the plot
- About ggplot2 package
- Draw a scatter plot using
ggplot
function
- Save plots using
ggsave
function
Aesthetic Mapping in ggplot2
- Define aesthetic
- Need for aesthetic in plotting
- Draw a scatter plot
- Customize a scatter plot
- View the structure of an object
- View the levels of a categorical variable
- Draw a bar chart using
ggplot
- Add labels to a plot in
ggplot
- Use the
fill
argument in aesthetic mapping
- Draw a histogram using
ggplot