First learned data scienceb Almost everything a data scientist needs to know b If you have a lot of programming experience, but you are not familiar with statistics or data analysis, or conversely, you know the theory, I have no idea how to study. This book details the computer science and programming required for the practice of data scientists. It also covers intuitive explanations, mathematical backgrounds and practical examples of widely used machine learning algorithms. Visualization methods and tools that are essential in data science, as well as the probabilities and statistics needed to interpret the data. Finally, we introduce know-how to organize and communicate results of data science work. This book is the best guide to quickly and systematically deliver what data scientists need to know.
Was looking for an intro text for my academic mates who aren't techie mates: this turned out to be it.
Covers all the important boring stuff (file formats, coding practices) and a bit of the flashy stuff (CNNs, Keras) and was written specifically to drag maths PhDs into basic competence.
TL;DR: good to leaf through to appreciate just how diverse the field of data science is. But it is neither reference material, nor an introductory textbook. The blame, however, lies more with Wiley’s poor editorial choices and the failure to clean-up major formatting and layout issues, instead of the author who writes well and covers a lot of ground.
Long Review
A pretty good book, overall, with plenty of example code to build real-life DS skills. The discussion is engaging and the organisation is very modular (with three major sections, in decreasing order of importance for real-life DS). However, the book suffers from three major defects (covered below). Although, of course, a lot of these issues have to do with it not being a Jupyter notebook.
First, the code is pretty darn annoying. The absence of colour coding, dependency mismatches, and deprecations makes the code from 2017 unreadable — if not quite unuseable. The code snippets are also not at a sufficient level of abstraction to allow a user to generalise the learnings. Besides, as it’s not always properly indented, nested loops can be tough to parse.
Second, this handbook is extremely sparing with figures or diagrams. For instance, this book manages to talk about JOINs in SQL without ever using a single Venn diagram or flowchart. Sure, there are (often, very unfinished) images of the output of code, but no conceptual illustrations. Cady is pretty good at explaining concepts in prose and employs good analogies (e.g., his description of typical Git commands in Chp-15 is an excellent introduction), but this approach simply doesn’t lend itself to many areas.
Third, this books cover a lot of ground, and the modular organisation doesn't always help, as many important concepts have in fact been pushed to the end. As a result, the first half often assumes prior knowledge of quite a lot of Python and related libraries; the text comes laced with terms like “scripting languages” and “classes”,and Cady often name-drops a concept just to add, “it’s too difficult so I won’t explain it here, hehe”. (Though, to be fair, classes and OOP do get a discussion, even if only in the final chapters of the book).
Overall, it makes for a good reading, if only to see what all lies out there in the world of DS. And there are nice nuggets of wisdom from a field-practitioner. However, this is not necessarily reference material (you aren’t likely to re-read it), nor is it a textbook (there are no exercises to consolidate learning). And it comes with several poor editorial choices and sometimes unworkable code from 2017. The author also yields to the so-called curse of knowledge, though this may be due to the major concepts getting pushed to the final third of the book.
I pretty good overview and a good place to start. There are a lot of typos which could lead you astray if you are not already familiar with material. If there is a second edition fixing this it would be worth seeking out.
The only real complaint I have is from near the end. During the discussion on pointers one of the sections and a occasionally in the text there are references to the stack and heap, but they were never defined or discussed. This would be very confusing to someone not already familiar with the topic.
Too much generalization. It is good for those who don't know anything about data science and data analytics. The author just added a few pages in each domain (like an introduction section) to cover it up as a handbook.
I have shown this book to a few of my colleagues and they all said one thing "It is just an introduction, not even coverd the full basics."
It's a simple intro to Data Science, nothing too fancy. If you are interested to understand what is data science as a beginner, it's great. If you're experienced, I don't think you will find much in this book.
Also, it's waaaaay better than the other Data Science Handbook from Carl Shan, seriously, don't even try that one if you want to be a better data scientist.