Key Information

Tutor: Dr Christopher Cooling 
Course LevelLevel 2 
Prerequisites: See below
Course Duration: 2 x 2 hour sessions 
Format: Live online or live face to face with hands on practice


Basic knowledge of Python is essential. Ideally an attendee will have used Python intensively for at least three months prior to attending this course. Python users who are already familiar with NumPy and/or SciPy will gain less from this course as it is primarily aimed at those learning about these features for the first time. Knowledge of the following areas of maths is required: 

  • Vectors 
  • Matrices 
  • Differentiation of simple functions 
  • Integration of simple functions 
  • Ordinary differential equation (useful, not required) 

If you are unfamiliar with of some of these areas, or would like a refresher, consider taking the Maths and Stats Online Catch Up course before you attend this course. This course can be completed at your own pace.

Python has many great advantages that leads to it being the programming language of choice for a large range of audiences. However, it is an inherently inefficient language and performing extensive numerical calculations in pure Python can be very slow. Fortunately, the NumPy and SciPy modules are a popular and effective way to greatly improve the performance of Python for numerical computing.

This course aims to introduce the basic features of the NumPy and SciPy packages and give attendees the experience required to begin using these packages in their own work. This will be achieved through a series of demonstrations, followed by hands-on practicals, which challenge attendees to apply the tools demonstrated to sample problems of increasing complexity.


  • What are NumPy and SciPy?
  • Creating and manipulating NumPy arrays
  • Operations using NumPy arrays
  • Performance comparison of NumPy arrays with standard Python
  • Using SciPy to perform numerical calculations
  • Extended exercises

The course will be delivered through a combination of written material, demonstrations and hands-on practicals.

Learning Outcomes

On completion of this workshop you will be better able to:

  • Describe the key functionality and advantages of NumPy and SciPy
  • Utilise NumPy arrays to store and perform operations on data sets
  • Locate appropriate SciPy functions for a specific problem
  • Create basic programs using NumPy and SciPy to solve numerical problems

Dates & Booking Information

Thursday 24 February 2022 (Part 1) 
Friday 25 February 2022 (Part 2)
South Kensington (Face-to-Face)
Monday 09 May 2022 (Part 1) & 
Wednesday 11 May 2022 
(Part 2)
Microsoft Teams
Thursday 16 June 2022 (Part 1) &
Friday 17 June 2022 
(Part 2)
South Kensington (Face-to-Face)
Summary of the table's contents

Please email the Graduate School with your CID number to book your place.