Engineering Computations is a collection of stackable learning modules, 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 with Python",
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 Python functions.
This second course module explores practical statistical analysis with Python, and the pandas
library for data analysis.
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.
- Join the open online course in our Open edX platform.
- Get a PDF version to print: Engineering Computations Module 2: Take off with stats. figshare. https://doi.org/10.6084/m9.figshare.5673499.v1
Lesson 1: Cheers! Stats with beers
Exploratory analysis using a data set of canned craft beers in the US. Introduces the pandas
library 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.
(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!