Full description not available
D**Y
A clear explanation of some of the concepts central to data science
The book begins with the basics of the Python language in a chapter entitled "A Crash Course in Python." Grus recommends the Anaconda distribution of Python 2.7, as do I. It is free, includes Python, NumPy, SciPy, matplotlib, and IPython that are used in the book, and includes pandas which we will use to handle financial data. This is not the book I would recommend for a person new to Python to learn the language, but it establishes the style and notation used for the remainder of the book.Chapters 4, 5, 6 are quick reviews of linear algebra and the Python data structures used, frequentist statistics, and probability, respectively. Chapter 7 discusses hypothesis and inference, and has a nice discussion of the beta distribution and its use in describing the "prior" distribution for Bayesian analysis.Chapter 8 begins to get into the data science with a description of the gradient descent method of finding the set of parameter values that maximize (or minimize) the objective function. The "from scratch" approach shows all the details.Chapter 10, Working with Data, begins with methods for exploring the data. Examining the distribution, plotting single dimensional data, comparing multiple data series, normalizing, rescaling, and dimensionality reduction.Chapter 11 begins machine learning -- models, overfitting, underfitting, bias-variance tradeoff, and feature extraction.Chapter 12 continues with k-nearest neighbors and the curse of dimensionality.Chapter 13 illustrates naive Bayes to implement a spam filter.Chapters 14 and 15 treat linear regression and multiple regression, fitting a model to data, and regularization to limit the tendency to overfit.Chapter 16 explains the logistic function and logistic regression. Examples look at measures of goodness of fit. The concept of support vector machine is explained, although the mathematics are beyond from scratch.Chapter 17 has a nice explanation of decision trees (the models that result from rule-based trading system development, such as AmiBroker). Entropy, as it applies to information content, is well explained and used to partition data as the rules are created. Random forests, one of the ensemble techniques for machine learning, is described in surprisingly concise code.Neural networks are described in chapter 18, including code for a feed forward, back propagation network that identifies digits. The interpretation of the weights of each of nodes gives insight into the workings of neural networks.The book continues on with discussions of clustering, natural language processing, network analysis, recommender system, and databases.While this is not the best book to learn Python, machine learning, or model development, it is valuable in explaining each of these topics with fully disclosed logic and computer code.This book gets five stars based on meeting its objectives -- to clearly illustrate some of the central concepts of data science.
K**E
Outstanding Book Providing Exactly What The Title Says
I thoroughly enjoyed this book, one of my favorite books ever on programming. It does three things superbly: covers the basic low level tools of a data scientist (the "from scratch" part), gives a great overview of useful Python programming examples for those new to Python, and gives an amazingly succinct yet high level overview of the mathematics and statistics required for data science.At first I was very worried about this book based on the first few chapters for the one reason that the author was cracking jokes throughout the text and I thought if it kept up for the rest of the book I was going to be very upset. But it did not happen and it turns out to have been a very reasonable way to ease into this complicated subject.The author steps through the toolbox of the data scientist, chapter by chapter, giving useful, insightful, clear pieces of code and textual explanations of each topic. So, for those new to data science it gives just enough to get the basic idea of a concept in terms of code and mathematical explanation, and then moves on to the next topic.It is often said that in writing, less is better and this book gets things down to their essence. That is one of the great things about the book - that the length of each chapter is about 20 pages (over 25 chapters). So each chapter can be read and the code even exercised in about an hour. Further, the references at the end of each chapter invite the reader to expanded information at the level of one or more entire textbooks or references. Thus the book can be seen as kind of boiling down a 25-volume set of highly technical subject matter into roughly 300 pages.The topics that were explored the best seem to be the ones on probability, working with data, regression, clustering, and databases (SQL). Some of the small but dense code samples were tough to follow but that is based on their algorithmic complexity - such as that for logistical regression and MapReduce. Occasionally the author uses a term that is not defined or in the index (such as data munging - which I still haven't looked up to see what it means). There are only a small number of typos which indicates good editing. While the Python crash course was pretty good, Python is a vast language and there could have been more to that section.I read this book from cover to cover and stepped through logically all the code (but did not actually run any of it) and I would wholeheartedly recommend this book for anyone wanting to work in the area of data science or its related fields, such as big data engineering or data analysis.
U**N
Jump Start for understanding Data Science.
Minus one star for using outdated Python 2.7. Essentially ALL data science tools you are likely to run across have been updated to Python 3.4+. I would have knocked off two stars but this book is actually quite good and delivers on its title.This is a very basic book on Data Science but it gives a broad overview which helps you get a perspective on the tools that are available. This book teaches methods by developing actual code for these methods. You will find in work situations that you will use library functions instead of "rolling your own" but this book helps bring the details together by having you actually code these techniques. I support this approach 100% Once you have this overview, you can drill down into specifics with other materials like textbooks or cookbooks.I'd did flinch at some of the explanations in this book but it really is a "from Scratch" approach and some things are simplified to avoid distractions.This book also teaches basic Python 2.7 with a quick start chapter, so it is self contained for any scientist or engineer that wants to get started adding Data Science techniques to their repertoire.
J**C
Good price, and quick delivery. Product as advertised.
Good price, and quick delivery. Product as advertised.
Trustpilot
2 months ago
1 day ago