/data-science-from-scratch

code for Data Science From Scratch book

Primary LanguagePythonMIT LicenseMIT

Data Science from Scratch

Here's all the code and examples from the second edition of my book Data Science from Scratch. They require at least Python 3.6.

(If you're looking for the code and examples from the first edition, that's in the first-edition folder.)

If you want to use the code, you should be able to clone the repo and just do things like this (you can omit the print function in interactive mode):

from scratch.linear_algebra import distance, vector_mean
v = [1, 2, 3]
w = [4, 5, 6]
print( distance(v, w) )
print( vector_mean([v, w]) )

Two notes:

  1. In order to use the library like this, you need to be in the root directory (that is, the directory that contains the scratch folder). If you are in the scratch directory itself, the imports won't work.

  2. It's possible that it will just work. It's also possible that you may need to add the root directory to your PYTHONPATH, if you are on Linux or OSX this is as simple as

export PYTHONPATH=/path/to/where/you/cloned/this/repo

(substituting in the real path, of course).

If you are on Windows, it's potentially more complicated.

Additionally, I've collected all the links from the book.

And, by popular demand, I made an index of functions defined in the book (which might be outdated), by chapter and page number (of the english version of the book). The data is in a spreadsheet. I also made a toy (experimental) searchable webapp.

Table of Contents

  1. Introduction
  2. A Crash Course in Python
  3. Visualizing Data
  4. Linear Algebra
  5. Statistics
  6. Probability
  7. Hypothesis and Inference
  8. Gradient Descent
  9. Getting Data
  10. Working With Data
  11. Machine Learning
  12. k-Nearest Neighbors
  13. Naive Bayes
  14. Simple Linear Regression
  15. Multiple Regression
  16. Logistic Regression
  17. Decision Trees
  18. Neural Networks
  19. Deep Learning
  20. Clustering
  21. Natural Language Processing
    Natural Language Processing Advanced
  22. Network Analysis
  23. Recommender Systems
  24. Databases and SQL
  25. MapReduce
  26. Data Ethics
  27. Go Forth And Do Data Science