Understand how to make sense of data with this amazing introduction to statistical learning!

This An Introduction to Statistical Learning review helps you choose between the R and Python versions and judge the prerequisites. It is a strong next step after basic programming when you want to understand model choice, resampling, and prediction error.
Planning to use Python for machine learning? Read the free Starter Kit excerpt on test sets before your first model. No email required; the full Starter Kit costs €19.
The following is a review of the book An Introduction to Statistical Learning by Gareth James, Daniela Witten, Trevor Hastie and Robert Tibshirani, a book that accomplishes just that.
Review of an Introduction to Statistical Learning
Data and statistics are an increasingly important part of modern life, and nearly everyone would be better off with a deeper understanding of the tools that help explain our world.
Even if you don’t want to become a data analyst, Machine learning engineer, or Data Scientist―which happen to be some of the fastest-growing jobs out there―this book is an invaluable guide to help explain what’s going on.
An Introduction to Statistical Learning provides an accessible overview of the field of statistical learning, an essential toolset for making sense of the vast and complex data sets that have emerged in fields ranging from biology to finance to marketing to astrophysics in the past twenty years.
It presents the perfect introduction to the intersection between statistics and machine learning, covering topics that go from the most basic like linear regression to more advanced like Support Vector Machines and clustering techniques.
The second R edition and Python edition cover regression, classification, resampling, regularization, trees, support vector machines, deep learning, survival analysis, unsupervised learning, and multiple testing. The older contents list below is not the complete scope of those editions.
The original review focuses on the R version (ISLR). The second R edition appeared in 2021; the Python version (ISLP) appeared in 2023 and adds Jonathan Taylor to the author team. Both offer chapter labs. The official book website provides PDFs and edition-specific resources.
Choose ISLR if you already use R; choose ISLP if you want to work in Python. You do not need to switch languages to learn the core statistical ideas. Run the labs in your chosen edition and explain the output before changing the model.
Also, at the end of each chapter there are exercises that cover both, the theoretical and practical parts of what has been covered, and that are a perfect (and sometimes challenging) way to test our working knowledge of what has been taught up to that point.
We profoundly recommend dedicating some time to slowly and properly completing these exercises.
Prerequisites: basic algebra, comfort reading graphs, and some familiarity with probability and statistics will help. You can learn through the labs without mastering advanced derivations first; revisit unfamiliar notation as it appears.
Later in this article, we will cover in depth who this book is oriented to.
ISL can serve as preparation for The Elements of Statistical Learning. The latter is more mathematically demanding, so move on when you want deeper derivations rather than treating it as compulsory next reading.
Both books cover similar topics, however, An Introduction to Statistical Learning does so in a much more accesible manner, making the book great fro a much broader audience. For people with a very high level of math then The Elements of Statistical Learning might be the preferred way to dig deeper into some topics, but for those that do not have a great mathematical background then An Introduction to statistical learning is probably a better option.
If you are not a mathematician or have a Bachelor or PhD in Mathematics, and you just need to apply data analytics to your research or in your job, this book will really help you.
Contents of an Introduction to Statistical Learning
The following outline is from the first R edition. Check the official edition resources for the expanded contents of the second R edition and the Python edition.
- Introduction: an overview and brief history of statistical learning, a vast set of tools for understanding data, and some examples.
- Statistical Learning: what is statistical learning, inference, parametric and non-parametric methods, and the trade-off between accuracy and model interpretability. Bias-variance trade-off and a lot more!
- Linear Regression: this chapter explains the most simple approach to supervised learning, how to estimate the coefficients, the different errors, and all you need to know.
- Classification: approaches to calculate discrete target variables and the detail of logistic regression, Linear Discriminant Analysis, and Bayes Theorem.
- Resampling Methods: how to draw examples from a training set and refitting a model of interest in each example in order to obtain additional information about the fitted model.
- Linear Model Selection and Regularization: chapter 6 introduces approaches for extending the framework of linear models to GLM, and how to avoid model variance: Lasso and Ridge Regression.
- Moving Beyond Linearity: going beyond linear models to polynomial regression, smoothing splines, generalised additive models and more!
- Tree-Based Methods: decision trees for classification and regression, bagging and random forest.
- Support Vector Machines: this chapter explains maximum margin classifiers and their evolution to Support Vector Machines. How they are trained, used to make predictions and their advantages and disadvantages.
- Unsupervised Learning: we end with clustering and dimensionality reduction, k-means, hierarchical clustering and Principal Component Analysis.
On the following link you can find the official Springer website of the text.
Also, most of the contents covered in this book can be found on Youtube on the StatLearning video series by the same authors. On the following video you can find the first lesson, with an Introduction of statistical learning, how it has evolved, and its relationship with Machine Learning.
Who is this book for?
You do not need a STEM degree to start. Check readiness by explaining a mean, a variance, and a simple regression plot, then working through an introductory lab. If these are unfamiliar, fill the specific gaps as you go.
We think this book is best for those with a Computer Science background, that are already implementing Machine Learning algorithms and models, that want to step up their understanding of the underlying theory behind them. It is a great continuation of many introductory Machine Learning courses, as it will allow you to deepen your knowledge and consolidate what you already have learned.
Many people want to go into the field of Machine Learning in a very fast paced manner, by learning straight away how to code and implement algorithms. For use, while it migth be good to start by programming to asses if you like it and are interested in further learning, it is also essential that once this has been covered you obtain a strong statistical base, which this book is perfect for.
Summary of an Introduction to Statistical Learning
An Introduction to Statistical Learning is great book to learn the basis of Machine Learning, if picked up by the right audience. If you are looking to obtain a profound statistical knowledge of the concepts underlying machine learning algorithms, but don’t want to go into a supe heavy mathematical text like The Elements of Statistical Learning, then this book is an awesome candidate.
It will give you a very strong foundation and a great understanding of the statistics of Machine Learning, and a great idea of how to implement the algorithms using R.
It is one of the best Machine Learning books to start going deep into the theory, and is also great to for those in the business of mathematics and statistics.
After a lab, repeat the analysis on a different dataset and record the baseline, validation method, and final test result. Read when cross-validation can mislead you before applying random folds to time-dependent or grouped data.
For Python labs, choose ISLP directly. For broader comparisons, browse our machine-learning book reviews.
Also, there are a couple of great starting book and courses that we always recommend, check them out!
Book reviews:
- The 100 page Machine Learning Book
- Hands-On Machine Learning with Scikit-Learn & Tensorflow.
- Deep Learning by Ian Goodfellow, Yoshua Bengio and Aaron Courville.
Courses
- Coursera: Machine Learning by Andrew Ng
- Complexity Explorer: Fundamentals of Machine Learning
- Udemy: Python for Data Science and Machine Learning Bootcamp.
As always, thank you for reading How to Learn Machine learning! We hope that you liked the review, please feel free to drop us a comment and follow us on Twitter!. Have a great day!
Tags: statistical learning, what is statistical learning, statistical learning book
Subscribe to our awesome newsletter to get the best content on your journey to learn Machine Learning, including some exclusive free goodies!


