Check this page every week for updates on course content and requirements.
π₯οΈ Week 01 29 Sep 2025 - 03 Oct 2025
π Formative
Setup and First Data Exploration
Reserve 1-2 hours to set up and interact with the platforms of communication (Slack) and for coding (Nuvolos) we will use throughout the course as well as to experience the kind of data analysis you will be doing in the near future.
Youβll use a Jupyter notebook to explore yearly heatwave counts, then compare your step-by-step process with an AI-only approach to understand when each method works best.
Note
No need to install anything!
All assessed work in this course can be done on Nuvolos Cloud with VS Code preconfigured. You do not need to install anything on your machine unless you prefer to. If you do, we will provide an optional local setup note later in the course, but Nuvolos remains the default.
π Support
Click here to see how to get help this week
We love hearing from you! Truly! Donβt hesitate to contact us for help.
Here are the best ways to get help with your DS105A studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from Riya (Monday 6-8pm) and Tabby (Tuesday 5-7pm).
Office Hours: Need 1-to-1 support? Book a 15-minute slot via StudentHub by searching for our names:
Jonathan Cardoso-Silva (Jon): Wednesday 2-5pm (in-person, COL.1.03)
Riya Chhikara: Friday 9-10am (in-person, DSI visualisation studio COL.1.06)
Drop-in Sessions: Pedro hosts drop-in sessions Wednesday 2-4pm at DSI visualisation studio (COL.1.06). No booking required, but please confirm attendance via e-mail to Kevin ().
Admin: For class changes, extensions, or other administrative queries, email Kevin ().
From Data to Insight: The Importance of Clean Data
Introduction to course goals and assessment. Reveal solution to the formative. Discuss the AI diagnostic: when AI helps versus when it fails. Notebooks as a professional tool.
Build on Week 01βs yearly heatwave data by exploring raw daily temperature records. Learn to load CSV files into pandas, apply basic DataFrame operations like filtering and sorting, and connect daily observations to the summary data you worked with in practice.
π₯οΈ Week 02 06 Oct 2025 - 10 Oct 2025
π Formative
Python Foundations & File Management
Complete foundational Python lessons through DataQuest, focusing on variables, data types, and collections. Learn to organise your workspace with proper folder structures and document your learning using Markdown formatting in Jupyter notebooks.
Tip
Actively post questions to Slack or attend support sessions if you get stuck or confused about any of the tasks.
π Support
Click here to see how to get help this week
There is a way to get help every single day of the week. Donβt hesitate to contact us for help. We love hearing from you!
Here are the best ways to get help with your DS105A studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from Riya (Monday 6-8pm) and Tabby (Tuesday 5-7pm).
Office Hours: Book a 15-minute slot via StudentHub by searching for our names:
Jonathan Cardoso-Silva (Jon): Tuesday 2-5pm (in-person, COL.1.03)
Riya Chhikara: Friday 9-10am (in-person, DSI visualisation studio COL.1.06)
Drop-in Sessions: Pedro hosts drop-in sessions Wednesday 2-4pm at DSI visualisation studio (COL.1.06). No booking required, but please confirm attendance via e-mail to Kevin ().
Admin: For class changes, extensions, or other administrative queries, email Kevin ().
Connect your DataQuest Python foundations to real data analysis. Explore how collections (lists and dictionaries) relate to DataFrames from Week 01. See a live API demonstration with weather data and preview next weekβs JSON work.
Practice connecting the Python collections you learned in DataQuest (lists and dictionaries) to pandas DataFrame operations. Apply bracket notation and indexing skills to real data analysis tasks.
π₯οΈ Week 03 13 Oct 2025 - 17 Oct 2025
π Formative
Terminal Navigation and Python Control Flow
Play Shell-it game to learn file system navigation, practise Terminal commands for professional workflows, and complete DataQuest lessons on loops and conditionals. Create your first notebook using Terminal commands, explore different file formats, and document your learning journey.
Note
Warm-up: Shell-it (paths & terminals)
Play βShell-it: The London Episodeβ at least 10 times: https://shell-it.vercel.app/. Spend one minute reflecting on paths and directories before opening the Nuvolos terminal. This helps connect mental models of locations with real filesystem navigation.
Tip
Actively post questions to Slack or attend support sessions if you get stuck or confused about any of the tasks.
π Support
Click here to see how to get help this week
There is a way to get help every single day of the week. Donβt hesitate to contact us for help. We love hearing from you!
Here are the best ways to get help with your DS105A studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from Riya (Monday 6-8pm) and Tabby (Tuesday 5-7pm).
Office Hours: Book a 15-minute slot via StudentHub by searching for our names:
Jonathan Cardoso-Silva (Jon): Wednesday 2-5pm (in-person, COL.1.03)
Riya Chhikara: Friday 9-10am (in-person, DSI visualisation studio COL.1.06)
Drop-in Sessions: Pedro hosts drop-in sessions Wednesday 2-4pm at DSI visualisation studio (COL.1.06)CANCELLED this week. Rescheduled to Monday 12:30-14:30 (Week 04) to provide additional support for the π W04 Practice exercise. No booking required, but please confirm attendance by responding to the calendar invite sent by Kevin.
Admin: For extensions or other administrative queries, email Kevin ( )
Understand how operating systems organise files and why paths matter for reproducible code. Learn about environment variables and their role in software. See a live demonstration of collecting API data and saving to JSON and CSV files. After the break, hands-on Git setup session where you create your personal repository and practise the basic Git workflow.
Apply loops and conditionals from DataQuest to real temperature analysis. Fetch July 2024 weather data from Open-Meteo API, save to JSON files, then use control flow to categorise hot days. Practise the complete workflow youβll need for π W04 Practice, connecting API data collection with Python analysis skills.
π₯οΈ Week 04 20 Oct 2025 - 24 Oct 2025
π Formative
London Heatwave Analysis
Build your first complete data pipeline: fetch historical temperature data from Open-Meteo for London (1990-2025), transform the JSON data into a usable format, and create a heatwave summary table showing yearly counts.
Tip
This assignment will help you practice for the upcoming summative assessment. Actively post questions to Slack or attend support sessions if you get stuck.
π’ Release
Mini-Project 1 (20%) - Weather Data Analysis
Instructions will be released this week. Deadline: Week 06 Thursday 8 pm.
π Support
Click here to see how to get help this week
There is a way to get help every single day of the week. Donβt hesitate to contact us for help. We love hearing from you!
Here are the best ways to get help with your DS105A studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from Riya (Monday 6-8pm) and Tabby (Tuesday 5-7pm).
Office Hours: Book a 15-minute slot via StudentHub by searching for our names:
Both sessions are at DSI visualisation studio (COL.1.06). No booking required, but please confirm attendance by responding to the calendar invite sent by Kevin.
Admin: For extensions or other administrative queries, email Kevin ( )
Understand why tidy, reproducible steps matter for data analysis. Learn how Python collections (lists and dictionaries) connect to pandas DataFrames, and practice essential operations like selection, grouping, and creating simple plots.
Work with real-world messy data to understand when to clean versus when to investigate inconsistencies. Practice applying transformations to datasets and learn to document your data quality decisions clearly.
π₯οΈ Week 05 27 Oct 2025 - 31 Oct 2025
π Support
Click here to see how to get help this week
There is a way to get help every single day of the week. Donβt hesitate to contact us for help. We love hearing from you!
Here are the best ways to get help with your DS105A studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from Riya (Monday 6-8pm) and Tabby (Tuesday 5-7pm).
Office Hours: Book a 15-minute slot via StudentHub by searching for our names:
Jonathan Cardoso-Silva (Jon): Wednesday 2-5pm (in-person, COL.1.03)
Riya Chhikara: Friday 9-10am (in-person, DSI visualisation studio COL.1.06)
Drop-in Sessions: Pedro hosts drop-in sessions Wednesday 2-4pm at DSI visualisation studio (COL.1.06). No booking required, but please confirm attendance via e-mail to Kevin ().
Admin: For extensions or other administrative queries, email Kevin ( )
Master pandas transformations including .apply() with custom functions in Python (the def operator) and .groupby() aggregations. Learn the principles of seaborn visualisation design and standards for communication of insights.
Practice creating multiple chart types from the same data, learn to justify your choices for different audiences, and develop skills in writing compelling narrative titles.
π₯οΈ Week 06 03 Nov 2025 - 07 Nov 2025
π Reading Week
Focus on Mini-Project 1. Support sessions available.
β²οΈ Deadline
Submit your Mini-Project 1 (20%) via GitHub until Thursday 8 pm.
π₯οΈ Week 07 10 Nov 2025 - 14 Nov 2025
π Support
Click here to see how to get help this week
There is a way to get help every single day of the week. Donβt hesitate to contact us for help. We love hearing from you!
Here are the best ways to get help with your DS105A studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from Riya (Monday 6-8pm) and Tabby (Tuesday 5-7pm).
Office Hours: Book a 15-minute slot via StudentHub by searching for our names:
Jonathan Cardoso-Silva (Jon): Wednesday 2-5pm (in-person, COL.1.03)
Riya Chhikara: Friday 9-10am (in-person, DSI visualisation studio COL.1.06)
Drop-in Sessions: Pedro hosts drop-in sessions Wednesday 2-4pm at DSI visualisation studio (COL.1.06). No booking required, but please confirm attendance via e-mail to Kevin ().
Admin: For extensions or other administrative queries, email Kevin ( )
Learn pd.json_normalize() to flatten nested JSON structures from API responses. Explore record_path, meta, and max_level parameters. See exposure-only examples of pd.concat(), .explode(), and .melt() that youβll use more in W08 and W09. These skills directly support βοΈ Mini-Project 2βs API work.
Apply pd.json_normalize() and .explode() to real OpenSanctions data. Build a complete data transformation pipeline, then engineer a plot_df DataFrame for visualisation. Practice groupby() aggregations on normalized data structures.
π’ Release
Mini-Project 2 (30%) - London Travel Time Analysis
Instructions will be released this week. Deadline: Week 10 Wednesday 8 pm.
π₯οΈ Week 08 17 Nov 2025 - 21 Nov 2025
π Support
Click here to see how to get help this week
There is a way to get help every single day of the week. Donβt hesitate to contact us for help. We love hearing from you!
Here are the best ways to get help with your DS105A studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from Riya (Monday 6-8pm) and Tabby (Tuesday 5-7pm).
Office Hours: Book a 15-minute slot via StudentHub by searching for our names:
Jonathan Cardoso-Silva (Jon): Wednesday 2-5pm (in-person, COL.1.03)
Riya Chhikara: Friday 9-10am (in-person, DSI visualisation studio COL.1.06)
Drop-in Sessions: Pedro hosts drop-in sessions Wednesday 2-4pm at DSI visualisation studio (COL.1.06). No booking required, but please confirm attendance via e-mail to Kevin ().
Admin: For extensions or other administrative queries, email Kevin ( )
Transform your normalised JSON outputs into relational tables. Learn how to design simple schemas, load data into SQLite, and write core SELECT, WHERE, and JOIN queries that support βοΈ Mini-Project 2 analysis.
Build SQL skills progressively from simple SELECT statements to complex aggregations. Compare SQL queries with pandas operations to understand when each approach works best. Recreate the π» W07 Lab visualisation using SQL instead of pandas.
π₯οΈ Week 09 24 Nov 2025 - 28 Nov 2025
π Support
Click here to see how to get help this week
There is a way to get help every single day of the week. Donβt hesitate to contact us for help. We love hearing from you!
Here are the best ways to get help with your DS105A studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from Riya (Monday 6-8pm) and Tabby (Tuesday 5-7pm).
Office Hours: Book a 15-minute slot via StudentHub by searching for our names:
Jonathan Cardoso-Silva (Jon): Wednesday 2-5pm (in-person, COL.1.03)
Riya Chhikara: Friday 9-10am (in-person, DSI visualisation studio COL.1.06)
Drop-in Sessions: Pedro hosts drop-in sessions Wednesday 2-4pm at DSI visualisation studio (COL.1.06). No booking required, but please confirm attendance via e-mail to Kevin ().
Admin: For extensions or other administrative queries, email Kevin ( )
Refine your βοΈ Mini-Project 2 methodology using structured frameworks and peer feedback. Learn essential exploratory data analysis principles including validation checks, outlier handling, statistical measure selection, and correlation vs causation boundaries.
Class teachers facilitate a conversation about DOs and DONβTs of visualisation, building on the exploratory data analysis principles from the lecture. Discuss when to use bar plots, box plots, and error bars, and why not use pie charts for everything.
π₯οΈ Week 10 01 Dec 2025 - 05 Dec 2025
π Support
Click here to see how to get help this week
There is a way to get help every single day of the week. Donβt hesitate to contact us for help. We love hearing from you!
Here are the best ways to get help with your DS105A studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from Riya (Monday 6-8pm) and Tabby (Tuesday 5-7pm).
Office Hours: Book a 15-minute slot via StudentHub by searching for our names:
Jonathan Cardoso-Silva (Jon): Wednesday 2-5pm (in-person, COL.1.03)
Riya Chhikara: Friday 9-10am (in-person, DSI visualisation studio COL.1.06)
Drop-in Sessions: Pedro hosts drop-in sessions Wednesday 2-4pm at DSI visualisation studio (COL.1.06). No booking required, but please confirm attendance via e-mail to Kevin ().
Admin: For extensions or other administrative queries, email Kevin ( )
Form project groups, set up team repositories via GitHub Classroom, and learn Git collaboration workflows including fetch, pull, and merge conflict resolution. Configure GitHub Pages for next weekβs pitch presentation.
Finalise group formation and repository setup. Practice branches and pull requests for professional code review workflows. Set up GitHub Pages for your pitch presentation and begin project planning discussions.
β²οΈ Deadline
Submit your Mini-Project 2 (30%) via GitHub until Wednesday 8 pm.
π’ Release
Group Project (50%)
Instructions will be released this week. Due next term (Winter Term Week 03 for Autumn cohorts). The exact date will be provided on the group project page.
There is a way to get help every single day of the week. Donβt hesitate to contact us for help. We love hearing from you!
Here are the best ways to get help with your DS105A studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from Riya (Monday 6-8pm) and Tabby (Tuesday 5-7pm).
Office Hours: Book a 15-minute slot via StudentHub by searching for our names:
Jonathan Cardoso-Silva (Jon): Wednesday 2-5pm (in-person, COL.1.03)
Riya Chhikara: Friday 9-10am (in-person, DSI visualisation studio COL.1.06)
Drop-in Sessions: Pedro hosts drop-in sessions Wednesday 2-4pm at DSI visualisation studio (COL.1.06). No booking required, but please confirm attendance via e-mail to Kevin ().
Admin: For extensions or other administrative queries, email Kevin ( )
Learn from professional examples of effective data storytelling. Distinguish static insights from interactive dashboards. Master GitHub Issues, Pull Requests, and Project Boards for team coordination. Introduction to geopandas for spatial data.
Final lab of Autumn Term. Deliver 5-minute pitch presentations to the teaching team, answer questions about your project planning and feasibility, and receive feedback on coordination and technical approach. All presentations take place in COL.1.06 (DSI Visualisation Studio).
Note: Non-attendance without extenuating circumstances results in -20 marks penalty. GitHub Pages presentation format is mandatory.