Foundation

Introduction to Python

Python basics: Lists, Functions, Packages, NumPy

Foundation

Data Types for Data Science

Lists, Tuples, Dictionaries and some more advanced data containers. Dates/Times

Foundation

Python Data Science Toolbox (Part 1)

UserDefined Functions, Scope, Lambda Functions and ErrorHandling

Foundation

Python Data Science Toolbox (Part 2)

Iterators, List Comprehension and Generators

Foundation

Software Engineering for Data Scientists in Python

Modules, Classes, Maintainability

Data Manipulation

Importing Data in Python (Part 1)

Importing data from files (e.g. csv, excel etc.)

Data Manipulation

Importing Data in Python (Part 2)

Importing data from APIs

Data Manipulation

Cleaning Data in Python

Outliers, missing values, duplicates, pivots, combining, string and pattern matching

Data Manipulation

Introduction to Databases in Python

SQL queries in Python, SQLAlchemy, database creation and update

Data Manipulation

pandas Foundations

Data import, exploration, quick visualisation, time series

Data Manipulation

Manipulating DataFrames with pandas

Index, slice, filter, advanced indexing, pivoting/reshaping, splitting, grouping

Data Manipulation

Merging DataFrames with pandas

Shared indices, concatenation, merging dataframes

Data Manipulation

Analyzing Police Activity with pandas

pandas case study

Data Visualisation

Introduction to Data Visualization with Python

Matplotlib, plot customisation and improvements, seaborn

Data Visualisation

Data Visualization with Seaborn

seaborn recap, complex plots, mutiplots, customisation

Data Visualisation

Interactive Data Visualization with Bokeh

Basic plots with bokeh, multiplots and layout, tooltips and annotations, bokeh server applications for visualisation

Data Visualisation

Visualizing Geospatial Data in Python

2 layer maps, scatterplots, GeoJSON, projections and coordinate transforms, spatial joins, street layer map, geopandas and folium

Data Visualisation

Improving your Data Visualizations in Python

Improving plotting and data visualisation, appropriate colour choice, showing uncertainty

Analysis and Modelling

Statistical Thinking in Python (Part 1)

Summary stats and data exploration, inference and probability, probability distributions and discrete variables

Analysis and Modelling

Statistical Thinking in Python (Part 2)

Finding optimal parameters, bootstrap confidence intervals, hypothesis testing

Analysis and Modelling

Supervised Learning with ScikitLearn

knearest neighbours, linear regression, crossvalidation, regularisation, logistic regression, ROC/AUC, train/test split and holdouts, encoding and normalising data, pipelines

Analysis and Modelling

Unsupervised Learning in Python

Clustering, hierarchical clustering and tSNE, principal components analysis, dimension reduction with nonnegative matrix factorisation

Analysis and Modelling

Machine Learning with TreeBased Models in Python

scikitlearn: CART, biasvariance tradeoff, crossvalidation, random forests, hyperparameter tuning, boosting
