Think DSP

Digital Signal Processing in Python

by Allen B. Downey

Order Think DSP from

Download Think DSP in PDF.

Read Think DSP in HTML.

The book and the code are in this GitHub repository.

And you can click here to run the code on Binder.


think_dsp_coverThink DSP is an introduction to Digital Signal Processing in Python.

The premise of this book (and the other books in the Think X series) is that if you know how to program, you can use that skill to learn other things. I am writing this book because I think the conventional approach to digital signal processing is backward: most books (and the classes that use them) present the material bottom-up, starting with mathematical abstractions like phasors.

With a programming-based approach, I can go top-down, which means I can present the most important ideas right away. By the end of the first chapter, you can decompose a sound into its harmonics, modify the harmonics, and generate new sounds.

This version of the book is a rough draft. I am making this draft available for comments, but it comes with the warning that it is still pretty rough. Your comments and suggestions are welcome!

Think DSP is a Free Book. It is available under the Creative Commons Attribution-NonCommercial 3.0 Unported License, which means that you are free to copy, distribute, and modify it, as long as you attribute the work and don’t use it for commercial purposes.

Other Free Books by Allen Downey are available from Green Tea Press.