The course is divided into a set of interactive lectures, labs and discussions. Lectures are meant to provide students with concepts and theories. Labs are for practising programming in Python and will be self-directed. Discussions are an extremely important part of learning, and students usually bring some great insights from old research papers.

An overview of all course sessions

WeekLectureTopicPython LibrariesLabs and Homework 1Assessment 23
W 1L1Introduction to Urban Data ScienceAnaconda and Jupyter, NumpyLab 1
W 2L2Spatial and Urban DataPandasLab 2
L3Data Grammar
W3L4Data EngineeringPandasLab 3Assignment 1
W4L5EDA and VisualisationGeopandas, Matplotlib, Rasterio, SeabornLab 4
W 5L7Networks and Spatial WeightsNetworkx, Osmnx, PysalLab 5Assignment 2
L8Exploratory Spatial Data Analysis
W 6L9Machine Learning for EveryoneSklearn, Scipy, StatsmodelsLab 6
L10Anatomy of a Learning Algorithm
W 7L11ClusteringPysal, Sklearn-ClusterLab 7Assignment 3
L12Dimensionality Reduction
W 8L13Spatial Density EstimationMore SklearnLab 8
L14Responsible Data Science
W 10Final Project4


Eight weeks of:

  • Prep. Materials: videos, podcasts, articles… 1h. approx. (most recommended!)
  • 14x 1h. Lecture: concepts, methods, examples
  • 2h. Computer labs: hands-on, application of concepts, Python (highly employable)
  • 1h. Paper Discussions: reading a paper and debating a set of questions with your peers in small groups. (extremely important if you are interested in applying concepts to real-world problems). Please read the paper before coming to the discussion session so you can have a more informed and informal debate with your peers.
  • Further readings: how to go beyond the minimum (very useful for the final project, if we don’t read, we cannot write)


  • Weeks 1-3: “big picture” lectures + introduction to computational tools (learning curve) + lots and lots of data
  • Weeks 4-7: lots of spatial, network and machine learning concepts + lots of visualisation
  • Weeks 8-10: wrap up + prepare an awesome final project in groups

Logistics - Website

Self-directed learning

Prepare for the labs

  • I won’t be leading/lecturing at the computer labs. TAs will be present for abundant help and feedback
  • Go over the notebooks before the lecture and the computer lab
  • If the first time you see a notebook is at the lab, you won’t be able to follow on. The best thing to do is to prepare a set of questions to ask the TAs.
  • Bring questions, comments, feedback, (informed) rants to class/labs. The more you bring, the more we all learn.
  • Collaborate (it’s NOT a zero-sum win!!!)


The summative assessments are graded components and contribute to the final mark for the course as follows:

  • Assignment 1 (15%)
  • Assignment 2 (15%)
  • Assignment 3 (10%)
  • Final Project (60%)

More help!!!

This course is much more about “learning to learn” and problem solving rather than acquiring specific programming tricks or stats wizardry

  • Learn to ask questions (but don’t expect exact answers all the time!!!)
  • Help others as much as you can (the best way to learn is to teach)
  • Search heavily on Google + Stack Overflow
  • Discussion Forum: students are encouraged to contribute meaningfully to the online discussion forum set up for the course on Brightspace. Meaningful contributions include both questions and answers that demonstrate the student is committed to make the forum a more useful resource for the rest of the group. This also enables your peers to learn from your questions and help each other. These will be the official channels of communications between you and us and I cannot guarantee answers to other channels like Slack or WhatsApp groups.

  1. In-class Labs are interactive Jupyter notebooks for practice. Labs are followed with a set of peer-reviewed homework questions. Homeworks are not graded, but your peers will give you feedback. Feedback is an excellent way to learn from other people. ↩︎

  2. Graded Assignments are individual activities and are released two weeks prior on Monday. Due at the end of the specified week on Friday at 2330. ↩︎

  3. Grades and feedback released two weeks after on Friday at 2330. ↩︎

  4. Final Project is a group activity ↩︎