Book Image

Mastering Machine Learning with R, Second Edition - Second Edition

Book Image

Mastering Machine Learning with R, Second Edition - Second Edition

Overview of this book

This book will teach you advanced techniques in machine learning with the latest code in R 3.3.2. You will delve into statistical learning theory and supervised learning; design efficient algorithms; learn about creating Recommendation Engines; use multi-class classification and deep learning; and more. You will explore, in depth, topics such as data mining, classification, clustering, regression, predictive modeling, anomaly detection, boosted trees with XGBOOST, and more. More than just knowing the outcome, you’ll understand how these concepts work and what they do. With a slow learning curve on topics such as neural networks, you will explore deep learning, and more. By the end of this book, you will be able to perform machine learning with R in the cloud using AWS in various scenarios with different datasets.
Table of Contents (23 chapters)
Title Page
Credits
About the Author
About the Reviewers
Packt Upsell
Customer Feedback
Preface
16
Sources

Data frames and matrices


We will now create a data frame, which is a collection of variables (vectors). We will create a vector of 1, 2, and 3 and another vector of 1, 1.5, and 2.0. Once this is done, the rbind() function will allow us to combine the rows:

> p <- seq(1:3)

> p
[1] 1 2 3

> q = seq(1, 2, by = 0.5)

> q
[1] 1.0 1.5 2.0

> r <- rbind(p, q)

> r
  [,1] [,2] [,3]
p    1  2.0    3
q    1  1.5    2

The result is a list of two rows with three values each. You can always determine the structure of your data using the str() function, which in this case shows us that we have two lists, one named p and the other named q:

> str(r)
 num [1:2, 1:3] 1 1 2 1.5 3 2
 - attr(*, "dimnames")=List of 2
  ..$ : chr [1:2] "p" "q"
  ..$ : NULL

Now, let's put them together as columns using cbind():

> s <- cbind(p, q)

> s
     p   q
[1,] 1 1.0
[2,] 2 1.5
[3,] 3 2.0

To put this in a data frame, use the data.frame() function. After that, examine the structure:

> s &lt...