Explore data science, one topic at a time.
Discover data science from fundamentals and programming to machine learning, deep learning, data engineering and research. Choose a topic to explore its course outline and lessons as they become available.
Data Science topics and courses
Search the directory or filter by category to find a subject.
Introduction to Data Science
Understand what data science is and the roles it plays across industries.
Data Science Lifecycle
Follow the end-to-end process from problem definition to deployment.
Types of Data: Structured, Semi-Structured and Unstructured
Distinguish the main forms of data and how each is handled.
Data Collection Methods
Gather data from surveys, APIs, web scraping, sensors and more.
Data Sources and Data Acquisition
Identify reliable sources and acquire data for analysis projects.
Data Cleaning Fundamentals
Handle missing values, duplicates and errors to prepare reliable data.
Data Preprocessing
Transform raw data into a form suitable for modelling and analysis.
Exploratory Data Analysis (EDA)
Discover patterns, anomalies and relationships through exploration.
Data Quality and Data Validation
Ensure accuracy, completeness and consistency of your data sets.
Data Wrangling and Transformation
Reshape, merge and transform data into analysis-ready formats.
Data Visualization Fundamentals
Choose effective visual encodings to communicate data clearly.
Descriptive Statistics for Data Science
Summarise and describe data using measures of centre and spread.
Probability for Data Science
Apply probability concepts to model uncertainty in data.
Statistical Inference
Draw conclusions about populations from sample data.
Ethics and Responsibilities in Data Science
Consider bias, privacy, fairness and responsible use of data.
Python Programming Fundamentals
Build a solid foundation in Python for data science work.
Python Data Types and Data Structures
Work with lists, tuples, dictionaries and other core structures.
Conditional Statements and Loops
Control program flow with conditions and iterative constructs.
Functions and Modules in Python
Write reusable functions and organise code into modules.
Object-Oriented Programming with Python
Use classes and objects to structure larger data science projects.
NumPy for Numerical Computing
Perform fast array operations and numerical computations with NumPy.
Pandas for Data Analysis
Load, explore and analyse tabular data with the Pandas library.
Data Manipulation with Pandas
Filter, group, merge and reshape data efficiently with Pandas.
SQL Fundamentals
Query relational databases using basic SQL statements.
Advanced SQL Queries
Write complex queries with subqueries, CTEs and window functions.
Joining and Aggregating Data
Combine tables and compute summaries with joins and aggregation.
Regular Expressions for Data Processing
Extract and clean text data using pattern-matching expressions.
Git and GitHub for Data Projects
Track changes and collaborate on data science code with Git.
Jupyter Notebook and Google Colab
Work interactively with code, output and documentation in notebooks.
R Programming for Data Science
Use R and its ecosystem for statistical computing and analysis.
Linear Algebra for Data Science
Apply vectors, matrices and linear transformations to data problems.
Vectors and Matrices
Represent data and operations using vectors and matrices.
Matrix Operations and Decompositions
Perform matrix arithmetic and useful factorisations for data science.
Calculus for Data Science
Use derivatives and integrals in optimisation and modelling.
Derivatives and Partial Derivatives
Compute rates of change for functions of one or more variables.
Gradient and Optimization
Minimise loss functions using gradient-based optimisation methods.
Probability Distributions
Model random phenomena with common discrete and continuous distributions.
Sampling and Sampling Distributions
Understand how sample statistics behave across repeated samples.
Hypothesis Testing
Test claims about populations using formal statistical procedures.
Correlation and Covariance
Measure linear association between pairs of variables.
Linear Regression Fundamentals
Model continuous outcomes with a simple linear relationship.
Statistical Modelling
Build and interpret statistical models for real-world data.
Bayesian Statistics
Update beliefs about parameters using prior knowledge and data.
Experimental Design and A/B Testing
Design experiments and run A/B tests to measure causal effects.
Causal Inference Fundamentals
Move from association to estimating causal effects from data.
Matplotlib for Data Visualization
Create static plots and charts with the Matplotlib library.
Seaborn for Statistical Graphics
Build attractive statistical visualisations with Seaborn.
Interactive Visualization with Plotly
Create interactive charts and dashboards that users can explore.
Dashboard Design Principles
Design clear, actionable dashboards for decision-makers.
Power BI Fundamentals
Build interactive reports and dashboards with Microsoft Power BI.
Tableau Fundamentals
Create powerful visual analytics with Tableau.
Business Intelligence and Reporting
Turn data into actionable business insights and reports.
Key Performance Indicators (KPIs)
Define and track metrics that matter for business performance.
Data Storytelling and Communication
Communicate findings effectively through narrative and visuals.
Business Analytics and Decision-Making
Use data analysis to support better organisational decisions.
Introduction to Machine Learning
Understand the core ideas and types of machine learning systems.
Supervised and Unsupervised Learning
Distinguish learning from labelled data versus discovering structure.
Training, Validation and Test Datasets
Split data properly to train models and evaluate generalisation.
Feature Engineering
Create informative features that improve model performance.
Feature Selection and Dimensionality Reduction
Reduce the number of features while retaining predictive power.
Linear Regression
Predict continuous outcomes with linear models in a machine learning setting.
Logistic Regression
Classify binary outcomes and estimate class probabilities.
Decision Trees
Build interpretable models that split data based on feature values.
Random Forests
Combine many trees into a powerful ensemble model.
Support Vector Machines (SVM)
Find optimal separating hyperplanes for classification tasks.
K-Nearest Neighbours (KNN)
Classify or regress based on the labels of nearby training points.
Naive Bayes Classification
Apply probabilistic classifiers based on Bayes’ theorem.
K-Means Clustering
Partition data into k groups based on similarity to centroids.
Hierarchical Clustering
Build nested clusters and visualise them with dendrograms.
Principal Component Analysis (PCA)
Reduce dimensionality while preserving as much variance as possible.
Gradient Boosting and XGBoost
Build high-performance models by sequentially correcting errors.
Model Evaluation Metrics
Choose and interpret metrics appropriate for classification and regression.
Cross-Validation and Hyperparameter Tuning
Estimate generalisation performance and optimise model settings.
Overfitting, Underfitting and Regularization
Balance model complexity to achieve good generalisation.
Imbalanced Data and Model Calibration
Handle class imbalance and produce well-calibrated probability estimates.
Deep Learning Fundamentals
Understand the core ideas behind deep neural networks.
Artificial Neural Networks
Build and train multi-layer networks for prediction and classification.
Convolutional Neural Networks (CNNs)
Process images and spatial data with convolutional architectures.
Recurrent Neural Networks (RNNs)
Model sequential data such as text and time series with RNNs.
Transformers and Attention Mechanisms
Use attention-based models that power modern NLP systems.
Natural Language Processing (NLP)
Analyse and generate human language with computational methods.
Large Language Models (LLMs)
Work with large pre-trained models for text understanding and generation.
Generative AI for Data Science
Apply generative models to create data, text, images and more.
Computer Vision
Extract information from images and video using deep learning.
Time Series Analysis and Forecasting
Model temporal data and generate forecasts for future values.
Recommendation Systems
Build systems that suggest relevant items to users.
Anomaly Detection
Identify unusual patterns that may indicate fraud or failure.
Graph Analytics and Graph Machine Learning
Analyse and learn from data represented as graphs and networks.
Reinforcement Learning Fundamentals
Train agents that learn by interacting with an environment.
Geospatial Data Science
Analyse location-based data and spatial relationships.
Big Data Fundamentals
Understand the challenges and technologies of large-scale data.
Data Warehousing and Data Lakes
Design storage systems for structured and unstructured data at scale.
ETL and ELT Pipelines
Build pipelines that move and transform data between systems.
Apache Spark and Distributed Data Processing
Process large data sets across clusters with Apache Spark.
Cloud Platforms for Data Science
Use cloud services for storage, compute and managed ML platforms.
APIs and Data Integration
Connect systems and exchange data through application programming interfaces.
Model Deployment and Model Serving
Put trained models into production so they can serve predictions.
MLOps and Model Monitoring
Manage the full lifecycle of models with monitoring and automation.
Data Privacy, Security and Responsible AI
Protect data and build AI systems that are fair, secure and accountable.
Data Science Capstone Project and Research
Plan, execute and present a substantial end-to-end data science project.
Choose a category. Build your data science skills step by step.
This directory organises data science from fundamentals and programming through machine learning, advanced AI, data engineering and research. Each topic can have its own course overview, chapter pages, examples, and practice questions. Some course pages still need to be created.