Tutorial Assignment

Complete by: Thursday 17 Oct. by 10:55am

A great way to learn a new skill is to teach it to others. In this assignment, you’ll make a tutorial to explain a topic from our class.

Writing Your Tutorial

This assignment is based on a similar assignment from Carnegie Mellon. I quote their instructions here:

Your tutorial should be in the form of a Jupyter notebook, which mixes together written markdown and code portions. You will walk your readers through the algorithm, library, methodology, or data that you are presenting, explaining high-level concepts with code examples. You want to make the tutorial read like an actual explanation of the process or technique, not just as a listing of code. As a general rule of thumb, you should have a paragraph or two of prose explaining any function or class method you include in the code.

All written prose, code, and figures must be your own work. Note that unlike in homework assignments, you cannot use any writing or code from third-party sources, even with citations. You additionally cannot use any figures from third-party sources (even with citations): if you want to use a figure to explain a concept or idea, you need to create a version of the figure yourself.

The prose of your tutorial should be at least 1,000 words, but you may need more to get your point across. Make sure there is a good back-and-forth between code and writing, and don’t leave any code unexplained. This should read a little bit like our workshop assignments, but with more detail on exactly what your reader should do.

Choose a single example data set to work with, either something we’ve used for a previous workshop or the one you used for your documentation assignment. You can’t choose one of the built-in Altair datasets or the exact data from our slides: it should be something from an external CSV. Make sure the data you choose is suitable for the technique you’re explaining.

Choosing a Topic

You may choose one of the following topics:

  • Data Wrangling with Pandas (filtering, renaming, grouping, etc.)
  • Visualizations with Altair (box plots, scatter plots, histograms, etc.)
  • Summary Statistics and Confidence Intervals
  • Hypothesis testing (to compare two groups)
  • Correlation: visualization and coefficients
  • Correlation: hypothesis test
  • Linear Regression

Remember that all of these topics include multiple steps and possibilities. Reach out with questions about what you should cover and/or how to approach the topic.

If you’d like to cover a topic that’s not on this list, feel free to ask me about it.


Requirements:

  • Turn in your tutorial (as an HTML file) via Sakai
  • Also turn in the original data file that you used (ideally a CSV)

Updated: