Course Info

Main advantage: quicker Data Processing with Python in your company; ability to work with large data that you cannot process in Excel

Duration: 4 days

More information:

  • Duration: 7 hours each day brutto (i.e. including breaks) + consultations after every course day
  • Format: workshop (70% workshop / 30% lecture)
  • Venue: online or client’s office or other place chosen by the client, in Europe
  • Enrollment: in-house on-site course for a group of people within one company
  • Group size: max 10 delegates
  • Course language: English or Polish or both during the same training

Course Syllabus

  1. Advanced Python
    1. Functions: default values, *args, **kwargs, lambda
    2. Generators
    3. Multiprocessing
  2. Object Oriented Programming
    1. Instance vs Class Attributes
    2. Special Methods and Operator Overloading
    3. @property
    4. Dataclasses
    5. Attribute Lookup Mechanism
    6. Encapsulation (Protected and Private Attributes)
    7. Bound vs Unbound Methods
    8. Single Inheritance
  3. Pandas Fundamentals
    1. Processing missing data (NaN)
    2. Adding and deleting Columns
    3. Transposing Data
    4. Summaring Data Statistics
    5. Import and Export from CSV
    6. Filtering
    7. Aggregation
    8. Import and Export from Relational Databases
    9. Import Data from REST APIs with requests Library
  4. Pandas Essentials
    1. Data wrangling & cleaning
    2. Wide vs Long Data Representation
    3. Pivot & Melt
    4. Data Sorting
    5. Reindexing
    6. Advanced Filtering in SQL Style
    7. Joins (inner, left, right full)
    8. Set Operations: Intersection, union, difference
    9. Binning
    10. Split-apply-combine Pattern
    11. Pivot Tables
    12. Crosstabs (Frequency Tables)
  5. Pandas for Time Series Processing
    1. Rolling Window
    2. Filtering by Dates
    3. Shifting & Lagging
    4. Differenced Data
    5. Resampling
    6. Joins on Time Series Data
  6. BigData & Pandas
    1. Task Scheduler
    2. Computational Cluster
    3. dask.DataFrame
    4. Alternatives
  7. Data Visualization with matplotlib
    1. Histograms
    2. Multiple Plots
    3. plt.plot() and In-depth Analysis of its Arguments
    4. Pandas functionalities for Data Visualization
    5. Heatmaps
    6. Correlation matrixes
    7. Histograms 2D
    8. Distribution and Boxplots
    9. Bar Graphs
    10. Scatter Matrixes
    11. Autocorrelation
    12. Seaborn and Other Libraries

Benefits for the Sponsor

As the course sponsor or HR you get:

  1. Analysis of the needs and my help to choose or design a great course during a phone call with the sponsor, HR, team leader or/and course delegates. On top of that, we ask delegates on the very first day what their needs are, to make even better usage of the course time.
  2. Course customisation to your needs.
  3. Guarantee that the course is conducted by an expert that worked for Google.
  4. Course evaluation as an electronic form at the end of the last course day. The evaluation results are sent to interested people (most of often they’re course sponsor and HR).
  5. Simple communication – you can contact the trainer directly by phone or email.
  6. Easy buying procedure – one call or email is enough to get offer and to book a date. I don’t do overbooking. The course is confirmed once you send the Purchase Order.
  7. Friendly business partner – as a rule, I treat all my clients like friends. I don’t build walls, I’m not pretending to be a huge training company and I write in first person.

Clients very often decide to order other training (including dedicated courses) after observing positive results of this course.

Benefits for Delegates

Delegates will benefit because of:

  1. Seven hours course every day (including breaks)
  2. Consultations after every course day.
  3. Support after the course, via email and phone.
  4. Setup instruction before the course to save time at the beginning of the course. I’m happy to help you via email, phone or Skype, etc. in case of any questions or issues.
  5. Course materials consisting of code snippets, comments, exercises and solutions. The entire courseware is a single web page which make it very easy to lookup something there. Courseware is available online during and after the training. Delegates can download it to use it offline. Courseware can be updated during the course in real time, so that we can include comments or entire new sections suggested by delegates.
  6. Environment ready to use after the course – we don’t use virtual machines. Instead, we install everything on delegates machines, so that they can reuse the same setup after the course.
  7. Recording of the training (in case of online training)


Below you can find some references.

Krzysztof Gębal

Very inspiring training. I really appreciate the way Chris managed to walk us through the complex world of machine learning using Python. Good course materials updated real time. Highly recommend.

Krzysztof Gębal
Finance Director at DNB Bank Polska S.A.

Arkadiusz Baraniecki

Well prepared training and reasonably passed knowledge, thanks to which we develop better services.

Arkadiusz Baraniecki
Infrastructure Team Manager at

Nicolas Leveroni

Chris recently taught a four day class on Machine Learning with Python four our team. The class was very good with the right balance of theory and practice. I cannot think of a better way to give a four day class about such an extensive topic.

Nicolas Leveroni
Head of Krakow Product Control Analytics at HSBC

You can read more references here.