
Practicing the skills you are learning is a critical part of mastering signal processing. Jupyter notebooks offer an ideal format for demonstration and practice. The software required to run a Python-based notebook is freely available, as is a rich set of libraries supporting signal processing operations.
You will need to keep the following in mind to benefit from Jupyter notebook lessons at AllSignalProcessing.com:
- You need access to a Python and Jupyter installation. You can install Python and Jupyter on your local machine from numerous sources, or you can use a commercial service. I use Google Colab as it is free to access from my Google account (e.g., Gmail) and is always up to date. Your favorite search engine will be helpful in finding and configuring an installation that works for you.
- The notebooks and data are provided in a zip file. Download the zip file by clicking the link below the "Files" heading. You may then access the files where your browser stores downloads.
- Two notebooks are usually provided in a lesson
- The starter notebook contains the base code and questions associated with the activity. Obviously you should start here! The struggle of trying to figure out the activity on your own is a very important part of your learning.
- The solution notebook has "solution" in the file name. It contains graphs, audio objects, and so on associated with the completed activity. It also has brief discussion relating to the questions in the starter notebook. You can refer to the solution if you get stuck. You will maximize your learning if you first try to complete the activity on your own, and then check your work against the solution.
- Most notebooks load data from one or more files. The directory containing any files is specified in the
path
character string defined in the first code cell. You will need to changepath
to reflect where you keep the files on your system. - You don't need to be a Python expert to benefit from the notebooks. While some activities involve completing a line or two of code, generally this will be straightforward and based on previous examples in the code.
- There are many, many ways to accomplish a task in Python. I have tried to write code so that it is easy to understand for a beginner, even if this means more lines of code or a less elegant solution.
- The minimum prerequisites for completing the activity are listed, but this is only my opinion. Depending on your background and taste for exploration, you may benefit from the activity without completing the prerequisites. Or you may find revisiting an activity later in your studies will provide additional insights.
If you find the Jupyter notebooks helpful or have suggestions, please send me an email through the Contact page. Thank you! I look forward to hearing from you.