Skip to main content Skip to navigation

Copy of Content blocks for course page

Edit the course information

A (no definitions) B (no definitions) C (no definitions) D (no definitions) E (no definitions) F (no definitions) G (no definitions) H (no definitions) I (no definitions) J (no definitions) K (no definitions) L (no definitions) M (no definitions)
N (no definitions) O (no definitions) P (no definitions) Q (no definitions) R (no definitions) S (no definitions) T (no definitions) U (no definitions) V (no definitions) W (no definitions) X (no definitions) Y (no definitions) Z (no definitions)


Data Science BSc (7G73)

Find out more about our Data Science BSc at Warwick


Page updates

We have revised the information on this page since publication. See the edits we have made and content history.

Bachelor of Science (BSc)
3 years full-time
26 September 2022
Department of Statistics
University of Warwick

Our Data Science (BSc) degree provides an essential mix of highly developed mathematical, statistical and computing skills for those interested in working at the forefront of the modern data revolution.

Our graduates are appropriately equipped to lead careers which leverage advanced technology to extract value from data or which develop such technologies.


Data Science questions how to make sense of the vast volumes of data generated daily in modern life, from social networks to scientific research and finance. It then suggests sophisticated computing techniques for processing this deluge of information.

The degree in Data Science provides an essential mix of highly developed mathematical, statistical and computing skills for those interested in working at the forefront of the modern data revolution, that is, in a career which leverages advanced technology to extract value from data - or in developing such technology.

Taught by specialists from the departments of Statistics, Computer Science and Mathematics, you will develop expertise in specialist areas of machine learning, data mining and algorithmic complexity. Skills development in mathematical and statistical modelling, algorithm design and software engineering prepares you for other careers including manufacturing, pharmaceuticals, finance, telecoms and scientific research.

The BSc and MSci in Data Science are the same during the first two years, making it easy to reconsider your preference.


You will learn through a combination of lectures, small-group tutorials and practical sessions based in the Department's well-equipped undergraduate computing laboratory. A central part of learning in Mathematics and Statistics is problem solving.

The curriculum is built on the principle that module choices get more and more flexible as you progress through the degree. On top of that, you may choose to study additional options from an even wider range of modules. Year Two: about 20% optional modules. Year Three: about 75% optional modules.

The curriculum is divided up into modules consisting of lectures and assessments, which are often supplemented by smaller group teaching such as tutorials, supervisions and computer labs. Homework assignments are often biweekly, and the expectation is that students work hard trying to tackle problems covering a range of levels of difficulty.
Class sizes vary from 15 students for selected optional modules up to 350 students for some core modules. Support classes usually consist of 15 students.
Contact time is around 15 hours a week.

You will be assessed by a combination of closed and open-book examinations, continuous assessment and project work, depending on your options. Your final year will contain a Data Science project.

The first year counts 10%, the second year 30% and the third year 60% towards the final BSc degree mark.


Study abroad

We support student mobility through study abroad programmes and all students have the opportunity to apply for an intercalated year abroad at one of our partner universities. Study Abroad Team based in the Office for Student Opportunity offers support for these activities, and the Department's dedicated Study Abroad Co-ordinator can provide more specific information and assistance.


Placements and work experience

You may additionally choose to spend an intercalated year in an approved industry, business or university between your last two years at Warwick.


A level typical offer

A*A*A to include A* A* in Mathematics and Further Mathematics


A*AA to include A* A (in any order) in Mathematics and Further Mathematics and one of the following:

  • STEP (grade 2)
  • TMUA (score 6.5)


A*A*A*A to include A* A (in any order) in Mathematics and Further Mathematics

Where an applicant is unable to study A Level Further Mathematics, they may be considered with grades A*A*A* including Mathematics. Please see the Department of Statistics webpage for further information.

A level contextual offer

We welcome applications from candidates who meet the contextual eligibility criteria. The typical contextual offer is A*A*B, including A* in Mathematics and A* in Further Mathematics; or A*AB including A*, A in Mathematics and Further Mathematics (any order), plus grade 2 in any STEP/6.5 in TMUA. See if you’re eligible.

General GCSE requirements

Unless specified differently above, you will also need a minimum of GCSE grade 4 or C (or an equivalent qualification) in English Language and either Mathematics or a Science subject. Find out more about our entry requirements and the qualifications we accept. We advise that you also check the English Language requirements for your course which may specify a higher GCSE English requirement. Please find the information about this below.


IB typical offer

39 overall to include 7 in Higher Level Mathematics 'Analysis and Approaches'


38 overall to include 6 in Higher Level Mathematics 'Analysis and Approaches' and one of the following:

  • STEP (grade 2)
  • TMUA (score 6.5)


38 overall to include 7 in Higher Level Mathematics 'Applications and Interpretations' and one of the following:

  • STEP (grade 2)
  • TMUA (score 6.5)

IB contextual offer

We welcome applications from candidates who meet the contextual eligibility criteria. The typical contextual offer is 37, including 7 in Higher Level Mathematics (‘Analysis and Approaches’ only) or 38 overall including 6 in Higher Level Mathematics (‘Analysis and Approaches’ only), plus 2 in any STEP/6 in TMUA. See if you’re eligible.

General GCSE requirements

Unless specified differently above, you will also need a minimum of GCSE grade 4 or C (or an equivalent qualification) in English Language and either Mathematics or a Science subject. Find out more about our entry requirements and the qualifications we accept. We advise that you also check the English Language requirements for your course which may specify a higher GCSE English requirement. Please find the information about this below.

  • Level 3 BTECs will be considered alongside two A Levels including A Level Maths

Year One

Programming for Computer Scientists

On this module, whatever your starting point, you will begin your professional understanding of computer programming through problem-solving, and fundamental structured and object-oriented programming. You will learn the Java programming language, through practical work centred on the Warwick Robot Maze environment, which will take you from specification to implementation and testing. Through practical work in object-oriented concepts such as classes, encapsulation, arrays and inheritance, you will end the course knowing how to write programs in Java, and, through your ability to analyse errors and testing procedures, be able to produce well-designed and well-encapsulated and abstracted code.

Design of Information Structures

Following on from Programming for Computer Scientists, on the fundamentals of programming, this module will teach you all about data structures and how to program them. We will look at how we can represent data structures efficiently and how we can apply formal reasoning to them. You will also study algorithms that use data structures. Successful completion will see you able to understand the structures and concepts underpinning object-oriented programming, and able to write programs that operate on large data sets.

Mathematical Programming I

Operational Research is concerned with advanced analytical methods to support decision making, for example for resource allocation, routing or scheduling. A common problem in decision making is finding an optimal solution subject to certain constraints. Mathematical Programming I introduces you to theoretical and practical aspects of linear programming, a mathematical approach to such optimisation problems.

Vectors and Matrices
Many problems in maths and science are solved by reduction to a system of simultaneous linear equations in a number of variables. Even for problems which cannot be solved in this way, it is often possible to obtain an approximate solution by solving a system of simultaneous linear equations, giving the "best possible linear approximation''.

The branch of maths treating simultaneous linear equations is called linear algebra. The module contains a theoretical algebraic core, whose main idea is that of a vector space and of a linear map from one vector space to another. It discusses the concepts of a basis in a vector space, the dimension of a vector space, the image and kernel of a linear map, the rank and nullity of a linear map, and the representation of a linear map by means of a matrix.

These theoretical ideas have many applications, which will be discussed in the module. These applications include:

Solutions of simultaneous linear equations. Properties of vectors. Properties of matrices, such as rank, row reduction, eigenvalues and eigenvectors. Properties of determinants and ways of calculating them.

Calculus 1/2

Calculus is the mathematical study of continuous change. In this module there will be considerable emphasis throughout on the need to argue with much greater precision and care than you had to at school. With the support of your fellow students, lecturers and other helpers, you will be encouraged to move on from the situation where the teacher shows you how to solve each kind of problem, to the point where you can develop your own methods for solving problems. By the end of the year you will be able to answer interesting questions like, what do we mean by `infinity’? This module is focused on developing your skills with calculations involving calculus.

Sets and Numbers

It is in its proofs that the strength and richness of mathematics is to be found. University mathematics introduces progressively more abstract ideas and structures, and demands more in the way of proof, until most of your time is occupied with understanding proofs and creating your own. Learning to deal with abstraction and with proofs takes time. This module will bridge the gap between school and university mathematics, taking you from concrete techniques where the emphasis is on calculation, and gradually moving towards abstraction and proof.

Introduction to Statistical Modelling
This module is an introduction to statistical thinking and inference. You’ll learn how the concepts you met from Probability can be used to construct a statistical model – a coherent explanation for data. You’ll be able to propose appropriate models for some simple datasets, and along the way you’ll discover how a function called the likelihood plays a key role in the foundations of statistical inference. You will also be introduced to the fundamental ideas of regression. Using the R software package you’ll become familiar with the statistical analysis pipeline: exploratory data analysis, formulating a model, assessing its fit, and visualising and communicating results. The module also prepares you for a more in-depth look at Mathematical Statistics in Year Two.

Probability 1
Probability is a foundational module that will introduce you both to the important concepts in probability but also the key notions of mathematical formalism and problem-solving. Want to think like a mathematician? This module is for you. You will learn how to to express mathematical concepts clearly and precisely and how to construct rigorous mathematical arguments through examples from probability, enhancing your mathematical and logical reasoning skills. You will also develop your ability to calculate using probabilities and expectations by experimenting with random outcomes through the notion of events and their probability. You’ll learn counting methods (inclusion–exclusion formula and binomial co-efficients), and study theoretical topics including conditional probability and Bayes’ Theorem.

Probability 2
This module continues from Probability 1, which prepares you to investigate probability theory in further detail here. Now you will look at examples of both discrete and continuous probability spaces. You’ll scrutinise important families of distributions and the distribution of random variables, and the light this shines on the properties of expectation. You’ll examine mean, variance and co-variance of distribution, through Chebyshev's and Cauchy-Schwarz inequalities, as well as the concept of conditional expectation. The module provides important grounding for later study in advanced probability, statistical modelling, and other areas of potential specialisation such as mathematical finance.

Year Two

Database Systems

How does the theory of relational algebra serve as a framework for the efficient organisation and retrieval of large amounts of data? During this module, you will learn to understand standard notations (such as SQL) which implements relational algebra, and gain practical experience of database notations that are widely used in the industry. Successful completion will see you equipped to create appropriate, efficient database designs for a range of simple applications and to translate informal queries into formal notation. You will have learned to identify and express relative integrity constraints for particular database designs, and have gained the ability to identify control measures for some common security threats.


Data structures and algorithms are fundamental to programming and to understanding computation. On this module, you will be using sophisticated tools to apply algorithmic techniques to computational problems. By the close of the course, you’ll have studied a variety of data structures and will be using them for the design and implementation of algorithms, including testing and proofing, and analysing their efficiency. This is a practical course, so expect to be working on real-life problems using elementary graph, greedy, and divide-and-conquer algorithms, as well as gaining knowledge on dynamic programming and network flows.

Stochastic Processes
The concept of a stochastic (developing randomly over time) process is a useful and surprisingly beautiful mathematical tool in economics, biology, psychology and operations research. In studying the ideas governing stochastic processes, you’ll learn in detail about random walks – the building blocks for constructing other processes as well as being important in their own right, and a special kind of ‘memoryless’ stochastic process known as a Markov chain, which has an enormous range of application and a large and beautiful underlying theory. Your understanding will extend to notions of behaviour, including transience, recurrence and equilibrium, and you will apply these ideas to problems in probability theory.

Mathematical Methods for Statistics and Probability
Following the mathematical modules in Year One, you’ll gain expertise in the application of mathematical techniques to probability and statistics. For example, you’ll be able to adapt the techniques of calculus to compute expectations and conditional distributions relating to a random vector, and you’ll encounter the matrix theory needed to understand covariance structure. You’ll also gain a grounding in the linear algebra underlying regression (such as inner product spaces and orthogonalization). By the end of your course, expect to apply multivariate calculus (integration, calculation of under-surface volumes, variable formulae and Fubini’s Theorem), to use partial derivatives, to derive critical points and extrema, and to understand constrained optimisation. You’ll also work on eigenvalues and eigenvectors, diagonalisation, orthogonal bases and orthonormalisation.

Probability for Mathematical Statistics
If you have already completed Probability in Year One, on this module you’ll have the opportunity to acquire the knowledge you need to study more advanced topics in probability and to understand the bridge between probability and statistics. You’ll study discrete, continuous and multivariate distributions in greater depth, and also learn about Jacobian transformation formula, conditional and multivariate Gaussian distributions, and the related distributions Chi-squared, Student’s and Fisher. You will also cover more advanced topics including moment-generating functions for random variables, notions of convergence, and the Law of Large Numbers and the Central Limit Theorem.

Mathematical Statistics
If you’ve completed “Probability for Mathematical Statistics”, this second-term module is your next step, where you’ll study in detail the major ideas behind statistical inference, with an emphasis on statistical modelling and likelihoods. You’ll learn how to estimate the parameters of a statistical model through the theory of estimators, and how to choose between competing explanations of your data through model selection. This leads you on to important concepts including hypothesis testing, p-values, and confidence intervals, ideas widely used across numerous scientific disciplines. You’ll also discover the ideas underlying Bayesian statistics, a flexible and intuitive approach to inference which is especially amenable to modern computational techniques. Overall this module will provide you a very firm foundation for your future engagement in advanced statistics – in your final years and beyond.

Linear Statistical Modelling with R
This module runs in parallel with Mathematical Statistics and gives you hands-on experience in using some of the ideas you saw there. The centrepiece of this module is the notion of a linear model, which allows you to formulate a regression model to explain the relationship between predictor variables and response variables. You will discover key ideas of regression (such as residuals, diagnostics, sampling distributions, least squares estimators, analysis of variance, t-tests and F-tests) and you will analyse estimators for a variety of regression problems. This module has a strong practical component and you will use the software package R to analyse datasets, including exploratory data analysis, fitting and assessing linear models, and communicating your results. The module will prepare you for numerous final years modules, notably the Year Three module covering the (even more flexible) generalised linear models.

Year Three

The third (final) year of the BSc allows you to forge a strong curriculum through a selection of more advanced modules in statistics and computer science, such as machine learning and Bayesian forecasting. It also includes a Data Science Project, which is your opportunity to showcase and expand your data-analytics.

  • Artificial Intelligence
  • Games and Decisions
  • Neural Computing
  • Machine Learning
  • Approximation and Randomised Algorithms
  • Mobile Robotics
  • Computer Graphics
  • Professional Practice of Data Analysis