London

Download Calendar

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

Overview

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

"I like that the public courses are supported by online training. I can learn at my own pace and time, which has helped increase my confidence in the work that I do." ~ research analyst, global financial institution