Virtual Classrom

Download Brochure

Who should attend?

This course would suit anyone with an interest in Python, but particularly those who would like to use it to analyse and present information on big datasets. We teach the Python language from first principles, meaning no prior coding experience is necessary. The course is not heavy on mathematical content either, so to remain accessible for attendees from many backgrounds.

Course details


Dates and Times

28th-29th May 2020 @ 09:00-17:00 BST (London time)


Python is arguably the fastest growing programming language in the world, for good reason. Due to its simplicity, open-source nature, large community, and wealth of application, Python can be used to solve business problems in many sectors, not least in finance. The objective of this 2-day workshop is to gain confidence in the main elements of Python programming and its application to basic financial data science problems. The first day of the course is spent acquiring a suite of Python language skills. The second day applies Python and Python packages (libraries) to some data science projects, including importing, cleaning, enrichment, transformation, visualization and output of large financial datasets.

Learning Outcomes

  • Learn to write, test and debug Python 3 code with confidence, including working with Containers, Conditionals & Loops, Functions & Modules and Error Handling.
  • Learn the fundamentals of some of the most widely used Python packages; including NumPy, Pandas and Matplotlib, then apply them to Data Analysis and Data Visualization projects.
  • Design and code a Graphical User Interface (GUI) to run a loan calculator program.

Day 1 - Learning the Language

The Anaconda Distribution & Spyder IDE

  • Uses of the Anaconda Command Prompt
  • A tour of Spyder IDE windows and functionality e.g.
    • Editor, IPython Console, File Explorer, Variable Explorer, Shortcuts, getting help

The Python 3 Language

  • Core Syntax
    • Data & Object Types, Variables
    • E.g. Numeric (Integers, Floats), String, Boolean
    • Math Operators, including **, //, %
    • Basic Input / Output (I/O). e.g. Print, Input
    • Code Presentation: Indentation and Commenting
    • Concatenation, Line Splitting & Continuation
    • Running Code Line by Line and in Cells
  • Containers
    • Strings
      • Replacement Fields
      • String Formatting & Slicing
      • String Methods e.g. Count, Index, Replace
    • Lists (Arrays)
      • Creating List Elements
      • Reading & Slicing Lists with Index Numbers
      • Mutating Lists: Amending, Appending, Inserting, Removing, Sorting
      • Working with Multiple Lists e.g. Multiplying List Elements
    • Ranges
      • Creating Lists of Ranges with Start, Stop and Step Parameters
      • Reading through Ranges
    • Dictionaries
      • Writing & Reading Keys and Items
      • Mutating Dictionaries: Amending, Adding, Removing
      • Dictionary Lookups: returning an Item for a Key
  • Conditionals and Loops
    • Comparison Operators, including: ==, !=
    • If, Elif, Else Statements
    • For Loops
    • While Loops, While True Loops with Continue & Break Statements
    • List Comprehensions (Introduction)
  • Functions (User-defined)
    • Defining and Calling
    • The Return Statement
    • Setting default parameter values
    • Using keyword / named / positional arguments
    • Lambda Functions (Introduction)
  • Error Handling
    • Error Types: Syntax (parsing) errors, Exception Errors
    • Tracebacks
    • Handling Exceptions: try, except, else, finally
  • Modules
    • Uses of popular built-in modules including: Math, Statistics, DateTime
    • Import methods: import, import…as, from…. import

Day 2: Basic Data Science Projects with Python Libraries

Project 1 (Pandas): Data Analysis

  • File Parsing large csv files into Pandas DataFrames
    • Reading & Locating / Slicing Data
    • Print Display Options
    • Data Cleaning
    • Data Type Assignments
  • Data Transformation: Manipulating DataFrames
    • Removing (Dropping), Renaming Columns
    • Adding Calculated Columns
    • Sorting & Filtering Data
    • Producing Summary Statistics
  • Outputting the Manipulated Data to Excel
  • Demo: The advantage of Python over Excel in working with Big Data

Project 2 (Matplotlib, NumPy, Pandas): Data Visualization

  • Visualizing various types of custom data, with and without DataFrames
  • Plotting Charts
    • Chart Types: Line / Time Series, Scatter / Regression, Pie etc
    • Adding Titles, Labels, Legends, Markers etc
    • Adding Controls e.g. Sliders, Zooms etc
    • Creating Subplots
    • Saving charts as high-quality PNG images for use in Word, PowerPoint etc

Project 3 (NumPy, PyQt5Designer): Loan Calculator

  • Building a Graphical User Interface (GUI) for user input, using the PyQt5Designer
  • Coding the calculator with NumPy time value of money functions

""The virtual classroom was engaging and it felt like a classroom training"" ~ HR, International Investment Bank

What is a Virtual Classroom?

Virtual Classroom training is a new and highly engaging way of delivering programs remotely with enhanced levels of interactivity compared to conventional webinars. In AMT’s Virtual Classroom participants are encouraged to activate their own webcams and mics throughout the class allowing for real-time engagement, both verbal and non-verbal, with fellow participants and their trainer. Participants can also share their screens to get instant assistance in any technical exercise; just like asking the trainer to walk over and help in the classroom! We have seen a step-change in participant engagement with this new technology. The trainer’s ability to see a selection of their participants’ faces in real-time, and to react to their verbal and non-verbal cues creates a remarkably realistic classroom-like experience. For an example of the technical requirements of for our Virtual Classrooms click here.