IPython Notebook Gallery

The IPython Notebook is a great vehicle for Python programming and data analysis. I've started using the notebook in my courses.

Here are a number of interesting IPython notebooks. Many are simple, focusing on beginners; some are more complicated. Feel free to use them in your own courses or your own studies.

Check back often as I will add more notebooks.

Probability, Statistics, and Data Analysis

  • Birthday and Chuck-a-Luck. [ipynb] [html]

    This is one of the first IPython notebooks I wrote (it shows little effort to "beautify" anything). It was part of a lecture in my ELEG 310 class (Random Signals and Noise). Chuck-a-Luck is a carnival dice game. I used it as a simple example of a random process.

  • RandomVariables. [ipynb] [html]

    Another one from my ELEG 310 class. Shows some discrete and continuous probability distributions and various plots. Inspired by (and parts copied from) a notebook by J.R. Johansson (robert@riken.jp).

Digital Signal Processing

  • Sine and Square Waves for St. Patrick's Day. [ipynb] [html]

    Part of a guest lecture I gave in Prof. Cimini's ELEG 305 class. I wanted to show the students how Python can be used for signal processing (as an alternative to Matlab). Sine waves, Lissajous plots, square waves.

  • Math Teachers Talk 2014 (Fun with sinusoids--and a little digital music). [ipynb] [html]

    I gave this at the Toyota-UD Applied Math Initiative, 24 July 2014. In attendence were a couple dozen high school (and a few middle school) teachers. The purpose was to show how high school mathematics is used by professionals. This notebook is a lot of fun: sinusiods, Lissajous figures, digital music, beat frequencies, frequency modulation, tremolo.

Preview

This posting is a simple explanation of what this blog will try to accomplish:

  • Firstly, I will write a series of postings about using Python and IPython in the ECE courses I teach: signal processing, probability, and statistics. Most of the posts will be on simple topics, suitable for beginners. Most other bloggers focus on elite programmers; my intention is to help the students.

    Of course, sometimes there will be posts on elite topics.

  • Secondly, I'm writing a textbook (Probability, Statistics, and Random Signals) using LaTeX and Tikz (for graphics). I'll post some examples of how to create graphics using Tikz.

  • Thirdly, I'll post about some fun topics, mostly sports like golf and baseball. After all, life is about more than just work.

  • Finally, I will occasionally post essays about current events (issues, not so much about the people). Spoiler alert: most of the people for whom I vote lose.