Skip to content

Commit 34cf9bb

Browse files
committed
Added chapter overview in the TOC.
1 parent 4e6832c commit 34cf9bb

File tree

1 file changed

+38
-10
lines changed

1 file changed

+38
-10
lines changed

toc.md

Lines changed: 38 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,17 @@
11
# IPython Cookbook: the Table of Contents
22

33
* [A one-stop guide for **high-performance scientific computing** and **data science** in Python](http://ipython-books.github.io/).
4+
* More than 100 hands-on, ready-to-use, highly focused recipes with diverse real-world examples and clear, detailed step-by-step explanations.
45
* All the code is available as IPython notebooks.
5-
6-
## Overview
7-
8-
* **100+ hands-on, ready-to-use, highly focused recipes** with diverse real-world examples and clear, detailed step-by-step explanations.
9-
* **15 chapters**
10-
* **Part 1 (chapters 1-6): Advanced High-Performance Interactive Computing**. For those who want to sharpen their scientific Python programming skills.
11-
* **Part 2 (chapters 7-15): Standard Methods in Data Science and Applied Mathematics**. Introduction to a wide range of methods in data science and applied mathematics.
12-
136

14-
## Full Table of Contents
7+
## Part I: Advanced High-Performance Interactive Computing
8+
9+
Part I (chapters 1-6) covers advanced methods in interactive numerical computing, high-performance computing, and data visualization.
1510

1611
### Chapter 1: A Tour of Interactive Computing with IPython
1712

13+
This chapter contains a brief but intense introduction to data analysis and numerical computing with IPython. It not only covers common packages such as Python, NumPy, Pandas, and matplotlib, but also advanced IPython topics such as interactive widgets in the notebook, custom magic commands, configurable IPython extensions, and new language kernels.
14+
1815
* [1.1. Introducing the IPython notebook](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter01_basic/01_notebook.ipynb)
1916
* [1.2. Getting started with exploratory data analysis in IPython](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter01_basic/02_pandas.ipynb)
2017
* [1.3. Introducing the multidimensional array in NumPy for fast array computations](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter01_basic/03_numpy.ipynb)
@@ -26,6 +23,8 @@
2623

2724
### Chapter 2: Best practices in Interactive Computing
2825

26+
This chapter details best practices for writing reproducible, high-quality code: task automation, versioning with Git, workflows with IPython, unit testing with nose, continuous integration, debugging, and other related topics. The importance of these subjects in computational research and data analysis cannot be overstated.
27+
2928
* 2.1. Choosing between Python 2 and Python 3 (or not)
3029
* 2.2. Efficient interactive computing workflows with IPython
3130
* 2.3. Learning the basics of the distributed version control system Git
@@ -39,6 +38,8 @@
3938

4039
### Chapter 3: Mastering the Notebook
4140

41+
This chapter covers advanced topics related to the IPython notebook, notably the notebook format, notebook conversions, and CSS/Javascript customization. The new interactive widgets available in IPython 2.0+ are also extensively covered. These techniques make data analysis in the notebook more interactive than ever.
42+
4243
* [3.1. Teaching programming in the notebook with IPython blocks](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter03_notebook/01_blocks.ipynb)
4344
* [3.2. Converting an IPython notebook to other formats with nbconvert](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter03_notebook/02_nbformat.ipynb)
4445
* [3.3. Adding custom controls in the notebook toolbar](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter03_notebook/03_controls.ipynb)
@@ -51,6 +52,8 @@
5152

5253
### Chapter 4: Profiling and Optimization
5354

55+
This chapter covers methods for making your code faster and more efficient: CPU and memory profiling in Python, advanced optimization techniques with NumPy (including large array manipulations), and memory mapping of huge arrays with the HDF5 file format and the PyTables library. These techniques are essential for big data analysis.
56+
5457
* [4.1. Evaluating the time taken by a statement in IPython](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter04_optimization/01_timeit.ipynb)
5558
* [4.2. Profiling your code easily with cProfile and IPython](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter04_optimization/02_profile.ipynb)
5659
* [4.3. Profiling your code line by line with line_profiler](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter04_optimization/03_linebyline.ipynb)
@@ -67,6 +70,8 @@
6770

6871
### Chapter 5: High-Performance Computing
6972

73+
This chapter covers advanced techniques for making your code much faster: code acceleration with Numba and Cython, wrapping of C libraries in Python with ctypes, parallel computing with IPython, OpenMP and MPI, and General-Purpose Computing on Graphics Processing Units (GPGPU) with CUDA and OpenCL. The chapter ends with an introduction to the recent Julia language, designed for high-performance numerical computing, and which can be easily used in the IPython notebook.
74+
7075
* [5.1. Accelerating pure Python code with Numba and Just-In-Time compilation](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter05_hpc/01_numba.ipynb)
7176
* [5.2. Accelerating array computations with Numexpr](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter05_hpc/02_numexpr.ipynb)
7277
* [5.3. Wrapping a C library in Python with ctypes](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter05_hpc/03_ctypes.ipynb)
@@ -89,6 +94,8 @@
8994

9095
### Chapter 6: Advanced Visualization
9196

97+
This chapter introduces a few data visualization libraries that go beyond matplotlib in terms of styling or programming interfaces (prettyplotlib and seaborn). It also covers interactive visualization in the notebook with Bokeh, mpld3, and D3.js. The chapter ends with an introduction to Vispy, a library that leverages the power of Graphics Programming Units for high-performance interactive visualization of big data.
98+
9299
* [6.1. Making nicer matplotlib figures with prettyplotlib](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter06_viz/01_prettyplotlib.ipynb)
93100
* [6.2. Creating beautiful statistical plots with seaborn](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter06_viz/02_seaborn.ipynb)
94101
* [6.3. Creating interactive Web visualizations with Bokeh](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter06_viz/03_bokeh.ipynb)
@@ -98,8 +105,15 @@
98105
* [Full list of references](https://github.com/ipython-books/cookbook-code/blob/master/references/chapter06_viz.md)
99106

100107

108+
## Part II: Standard Methods in Data Science and Applied Mathematics
109+
110+
Part II (chapters 7-15) introduces standard methods in data science and mathematical modeling. All of these methods are applied to real-world data.
111+
112+
101113
### Chapter 7: Statistical Data Analysis
102114

115+
This chapter covers methods for getting insight into data. It introduces classic frequentist and Bayesian methods for hypothesis testing, parametric and nonparametric estimation, and model inference. The chapter leverages Python libraries such as Pandas, SciPy, statsmodels, and PyMC. The last recipe introduces the statistical language R, which can be easily used in the notebook.
116+
103117
* [7.1. Exploring a dataset with Pandas and matplotlib](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter07_stats/01_pandas.ipynb)
104118
* [7.2. Getting started with statistical hypothesis testing: a simple z-test](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter07_stats/02_z_test.ipynb)
105119
* [7.3. Getting started with Bayesian methods](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter07_stats/03_bayesian.ipynb)
@@ -113,6 +127,7 @@
113127

114128
### Chapter 8: Machine Learning
115129

130+
This chapter covers methods for learning and making predictions from data. Using the scikit-learn Python package, this chapter illustrates fundamental data mining and machine learning concepts such as supervised and unsupervised learning, classification, regression, feature selection, feature extraction, overfitting, regularization, cross-validation, and grid search. Algorithms addressed in this chapter include logistic regression, Naive Bayes, K-nearest neighbors, Support Vector Machines, random forests, and others. These methods are applied to various types of datasets: numerical data, images, and text.
116131

117132
* [8.1. Getting started with scikit-learn](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter08_ml/01_scikit.ipynb)
118133
* [8.2. Predicting who will survive on the Titanic with logistic regression](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter08_ml/02_titanic.ipynb)
@@ -128,6 +143,8 @@
128143

129144
### Chapter 9: Numerical Optimization
130145

146+
This chapter is about minimizing or maximizing mathematical functions. This topic is pervasive in data science, notably in statistics, machine learning, and signal processing. This chapter illustrates a few root-finding, minimization, and curve fitting routines with SciPy.
147+
131148
* [9.1. Finding the root of a mathematical function](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter09_numoptim/01_root.ipynb)
132149
* [9.2. Minimizing a mathematical function](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter09_numoptim/02_minimize.ipynb)
133150
* [9.3. Fitting a function to data with nonlinear least squares](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter09_numoptim/03_curvefitting.ipynb)
@@ -137,6 +154,8 @@
137154

138155
### Chapter 10: Signal Processing
139156

157+
This chapter is about extracting relevant information from complex and noisy data. These steps are sometimes required prior to running statistical and data mining algorithms. This chapter introduces standard signal processing methods like Fourier transforms and digital filters.
158+
140159
* [10.1. Analyzing the frequency components of a signal with a Fast Fourier Transform](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter10_signal/01_fourier.ipynb)
141160
* [10.2. Applying a linear filter to a digital signal](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter10_signal/02_filter.ipynb)
142161
* [10.3. Computing the autocorrelation of a time series](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter10_signal/03_autocorrelation.ipynb)
@@ -145,6 +164,8 @@
145164

146165
### Chapter 11: Image and Audio Processing
147166

167+
This chapter covers signal processing methods for images and sounds. It introduces image filtering, segmentation, computer vision, and face detection with scikit-image and OpenCV. It also presents methods for audio processing and synthesis.
168+
148169
* [11.1. Manipulating the exposure of an image](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter11_image/01_exposure.ipynb)
149170
* [11.2. Applying filters on an image](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter11_image/02_filters.ipynb)
150171
* [11.3. Segmenting an image](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter11_image/03_segmentation.ipynb)
@@ -157,6 +178,8 @@
157178

158179
### Chapter 12: Deterministic Dynamical Systems
159180

181+
This chapter describes dynamical processes underlying particular types of data. It illustrates simulation techniques for discrete-time dynamical systems, as well as for both Ordinary Differential Equations and Partial Differential Equations.
182+
160183
* [12.1. Plotting the bifurcation diagram of a chaotic dynamical system](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter12_deterministic/01_bifurcation.ipynb)
161184
* [12.2. Simulating an elementary cellular automaton](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter12_deterministic/02_cellular.ipynb)
162185
* [12.3. Simulating an Ordinary Differential Equation with SciPy](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter12_deterministic/03_ode.ipynb)
@@ -166,16 +189,19 @@
166189

167190
### Chapter 13: Stochastic Dynamical Systems
168191

192+
This chapter describes dynamical random processes underlying particular types of data. It illustrates simulation techniques for discrete-time Markov chains, point processes, and stochastic differential equations.
193+
169194
* [13.1. Simulating a discrete-time Markov chain](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter13_stochastic/01_markov.ipynb)
170195
* [13.2. Simulating a Poisson process](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter13_stochastic/02_poisson.ipynb)
171196
* [13.3. Simulating a Brownian motion](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter13_stochastic/03_brownian.ipynb)
172197
* [13.4. Simulating a stochastic differential equation](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter13_stochastic/04_sde.ipynb)
173198
* [Full list of references](https://github.com/ipython-books/cookbook-code/blob/master/references/chapter13_stochastic.md)
174199

175200

176-
177201
### Chapter 14: Graphs, Geometry and Geographic Information Systems
178202

203+
This chapter covers analysis and visualization methods for graphs, social networks, road networks, maps, and geographic data.
204+
179205
* [14.1. Manipulating and visualizing graphs with NetworkX](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter14_graphgeo/01_networkx.ipynb)
180206
* [14.2. Analyzing a social network with NetworkX](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter14_graphgeo/02_social.ipynb)
181207
* [14.3. Resolving dependencies in a Directed Acyclic Graph with a topological sort](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter14_graphgeo/03_dag.ipynb)
@@ -189,6 +215,8 @@
189215

190216
### Chapter 15: Symbolic and Numerical Mathematics
191217

218+
This chapter introduces SymPy, a Computer Algebra System in pure Python. SymPy can help you conduct detailed analyses of mathematical models. The chapter ends with an introduction to Sage, another Python-based system for computational mathematics.
219+
192220
* [15.1. Diving into symbolic computing with SymPy](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter15_symbolic/01_sympy_intro.ipynb)
193221
* [15.2. Solving equations and inequalities](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter15_symbolic/02_solvers.ipynb)
194222
* [15.3. Analyzing real-valued functions](http://nbviewer.ipython.org/github/ipython-books/cookbook-code/blob/master/notebooks/chapter15_symbolic/03_function.ipynb)

0 commit comments

Comments
 (0)