Computational Thinking and Data Science (includes Applied Statistics)


This course aims to provide students with an understanding of the role that computation can play in solving problems and to help students to feel confident in writing small programs, which allow them to accomplish useful goals.
Pre-requisite: Introduction to Programming or Data Visualization or Data Curation

General characterization





Responsible teacher

Patrícia Xufre


Weekly - Available soon

Total - Available soon

Teaching language





Guttag, John. Introduction to Computation and Programming Using Python: With Application to Understanding Data. 2nd ed. MIT Press, 2016. ISBN: 9780262529624.

Teaching method

Taking into consideration the fundamental purpose of this course, the learning method most suitable to this course is learning-by-example as well as learning-by-doing.

Evaluation method

Your final grade is based on in-class exercises (30%), two problem sets (10% each), and the final exam (50%).

A minimum of 9 points (out of 20) in the final exam is required to pass the course.

Late assignments are not accepted. Submissions that do not run will receive at most 20% of the points 

Subject matter

1.    Introduction to Computational Thinking
2.    Optimization Problems and Graph-theoretic Models
3.    Random Walks and Monte Carlo Simulation
4.    Sampling and Confidence Intervals
5.    Understanding Experimental Data