# Prerequisites
In this book, we assume the reader is comfortable with the knowledge presented
in [Data 8][data8] or some equivalent. In particular, we will assume that the
reader is familiar with the following topics (links to pages from the Data 8
textbook are given in parentheses).
- Tabular data manipulation: selection, filtering, grouping, joining [(link)][8.2]
- Basic probability concepts [(link)][9.5]
- Sampling, empirical distributions of statistics [(link)][10.3]
- Hypothesis testing using bootstrap resampling [(link)][13.4]
- Least squares regression and regression inference [(link)][16.2]
- Classification [(link)][17.1]
In addition, we assume that the reader has taken a course in computer
programming in Python, such as [CS61A][61a] or some equivalent. We will not
explain Python syntax except in special cases.
Finally, we assume that the reader has basic familiarity with partial
derivatives, gradients, vector algebra, and matrix algebra.
[8.2]: https://www.inferentialthinking.com/chapters/08/2/classifying-by-one-variable.html
[9.5]: https://www.inferentialthinking.com/chapters/09/5/finding-probabilities.html
[10.3]: https://www.inferentialthinking.com/chapters/10/3/empirical-distribution-of-a-statistic.html
[13.4]: https://www.inferentialthinking.com/chapters/13/4/using-confidence-intervals.html
[16.2]: https://www.inferentialthinking.com/chapters/16/2/inference-for-the-true-slope.html
[17.1]: https://www.inferentialthinking.com/chapters/17/1/nearest-neighbors.html
[data8]: http://data8.org/
[61a]: https://cs61a.org/