Hands-on data analysis using a computational approach and real-life applications.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Engineering Computations Module 2

Engineering Computations is an online course made up of a set of stackable learning modules, so that it can be flexible for adoption in different situations. It aims to develop computational skills for students in engineering, but it can also be used by students in other science majors. The course uses the Python programming language and the Jupyter open-source tools for interactive computing.

The first module, "Get data off the ground", assumed no coding experience and created a foundation with Python programming constructs and data structures. You learned to play with strings, lists and NumPy arrays, using indexing, slicing, for- and if-statements, and functions.

This second course module explores practical statistical analysis with Python, and the pandas library for data analysis.

Module 2: Take off with stats

Hands-on data analysis using a computational approach and real-life applications.

Get an interactive session in MyBinder.org with these course materials by clicking on the button below. Select the folder notebooks_en to access the five lessons of this course as fully executable Jupyter notebooks.


Lesson 1: Cheers! Stats with beers

Exploratory analysis using a data set of canned craft beers in the US. Introduces the pandaslibrary and its data types: Data Frames and Series. Use pandas to read a data file, extract selected columns, and remove null values. Descriptive statistics: measures of central tendency and variability. Distribution plots: histograms with Matplotlib. Comparing with a normal distribution.

Lesson 2: Seeing stats in a new light

Continuing with the data set of canned craft beers, this lesson focuses on visualizing statistics. For quantitative data: histograms and box plots; for categorical data: bar plots. Visualizing multiple data with scatter plots and bubble charts.

Lesson 3: Lead in lipstick

A full worked example using what you learned in lessons 1 and 2: using data from studies by the US Food and Drug Administration on the lead content in lipstick, we fact-check alarming news headlines. Based on Prof. Kristin Sainani's lecture, "Exploring real data: lead in lipstick," of her Stanford Online course "Statistics in Medicine."

Lesson 4: Life expectancy and wealth

Deeper dive into pandas, using data for life expectancy and per-capita income over time, across the world. Inspired by the work of Hans Rosling. Pandas methods: head(), info(), value_counts(), groupby(), describe(), groupby.first(), groupby.get_group(), idxmin() Categorical data type. Bubble plots, spaghetti plots, and interactive widgets.

Copyright and License

(c) 2017 Lorena A. Barba, Natalia C. Clementi. All content is under Creative Commons Attribution CC-BY 4.0, and all code is under BSD-3 clause. We are happy if you re-use the content in any way!

License License: CC BY 4.0