Get in Touch

Course Outline

Introduction

  • Python's versatility: from data analysis to web crawling

Python Data Structures and Operations

  • Integers and floats
  • Strings and bytes
  • Tuples and lists
  • Dictionaries and ordered dictionaries
  • Sets and frozensets
  • Data frames (pandas)
  • Conversions

Object-Oriented Programming with Python

  • Inheritance
  • Polymorphism
  • Static classes
  • Static functions
  • Decorators
  • Other

Data Analysis with Pandas

  • Data cleaning
  • Using vectorised data in pandas
  • Data wrangling
  • Sorting and filtering data
  • Aggregate operations
  • Analysing time series

Data Visualisation

  • Plotting diagrams with matplotlib
  • Using matplotlib within pandas
  • Creating high-quality diagrams
  • Visualising data in Jupyter notebooks
  • Other visualisation libraries in Python

Vectorising Data in Numpy

  • Creating Numpy arrays
  • Common operations on matrices
  • Using ufuncs
  • Views and broadcasting on Numpy arrays
  • Optimising performance by avoiding loops
  • Optimising performance with cProfile

Processing Big Data with Python

  • Building and supporting distributed applications with Python
  • Data storage: Working with SQL and NoSQL databases
  • Distributed processing with Hadoop and Spark
  • Scaling your applications

Extending Python (and vice versa) with Other Languages

  • C#
  • Java
  • C++
  • Perl
  • Others

Python Multi-Threaded Programming

  • Modules
  • Synchronising
  • Prioritising

Data Serialization

  • Python object serialisation with Pickle

UI Programming with Python

  • Framework options for building GUIs in Python
    • Tkinter
    • PyQt

Python for Maintenance Scripting

  • Raising and catching exceptions correctly
  • Organising code into modules and packages
  • Understanding symbol tables and accessing them in code
  • Selecting a testing framework and applying TDD in Python

Python for the Web

  • Packages for web processing
  • Web crawling
  • Parsing HTML and XML
  • Automatically filling web forms

Summary and Next Steps

Requirements

  • Beginner to intermediate programming experience
  • Knowledge of mathematics and statistics
  • Familiarity with database concepts

Audience

  • Developers
 28 Hours

Number of participants


Price per participant

Testimonials (7)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories