EIEIOTECHNOVATION
← Training programmes

EIEIO / APPLICATION TRAINING

Python for Excel

Course outline

5 days

Module 1

Python Installation

Anaconda Prompt

Python REPL: An Interactive Python Session

Package Managers: Conda and pip

Conda Environments

Jupyter Notebooks

Running Jupyter Notebooks

Notebook Cells

Edit vs. Command Mode

Run Order Matters

Shutting Down Jupyter Notebooks

Visual Studio Code

Installation and Configuration

Running a Python Script

Module 2

Data Types

Objects

Numeric Types

Booleans

Strings

Indexing and Slicing

Indexing

Slicing

Data Structures

Lists

Dictionaries

Tuples

Sets

Control Flow

Code Blocks and the pass Statement

The if Statement and Conditional Expressions

The for and while Loops

Module Title : Python for excel

Duration : 5 days

Course Outline :: Python for excel ::

List, Dictionary, and Set Comprehensions

Functions

Modules and the import Statement

The datetime Class

Looping in Python

Module 3 NumPy

Getting Started with NumPy

NumPy Array

Vectorization and Broadcasting

Universal Functions (ufunc)

Creating and Manipulating Arrays

Getting and Setting Array Elements

Useful Array Constructors

View vs. Copy

Module 4 Data Analysis with pandas

Data Frame and Series

Index

Columns

Data Manipulation

Selecting Data

Setting Data

Missing Data

Duplicate Data

Arithmetic Operations

Working with Text Columns

Applying a Function

View vs. Copy

Combining DataFrames

Concatenating

Joining and Merging

Descriptive Statistics and Data Aggregation

Descriptive Statistics

Grouping

Pivoting and Melting

Plotting

Course Outline :: Python for excel ::

Matplotlib

Plotly

Importing and Exporting Data Frames

Exporting CSV Files

Importing CSV Files

DatetimeIndex

Creating a DatetimeIndex

Filtering a DatetimeIndex

Working with Time Zones

Common Time Series Manipulations

Shifting and Percentage Changes

Rebasing and Correlation

Resampling

Rolling Windows

Limitations with pandas

Conclusion

Module 5 Excel File Manipulation with pandas

Case Study: Excel Reporting

Reading and Writing Excel Files with pandas

The read_excel Function and ExcelFile Class

The to_excel Method and ExcelWriter Class

Limitations When Using pandas with Excel Files

The Reader and Writer Packages

When to Use Which Package

The excel.py Module

OpenPyXL

XlsxWriter pyxlsb xlrd, xlwt, and xlutils

Advanced Reader and Writer Topics

Working with Big Excel Files

Formatting DataFrames in Excel

Case Study (Revisited): Excel Reporting

Module 6. Excel Automation

Course Outline :: Python for excel ::

Getting Started with xlwings

Using Excel as Data Viewer

The Excel Object Model

Running VBA Code

Converters, Options, and Collections

Working with DataFrames

Converters and Options

Charts, Pictures, and Defined Names

Case Study (Re-Revisited): Excel Reporting

Advanced xlwings Topics

Module 7. Python-Powered Excel Tools

Using Excel as Frontend with xlwings

Excel Add-in

Quickstart Command

Run Main

RunPython Function

Deployment

Python Dependency

Standalone Workbooks: Getting Rid of the xlwings Add-in

Configuration Hierarchy

Settings

Conclusion

Module 8 The Python Package Tracker

What We Will Build

Core Functionality

Web APIs

Databases

Exceptions

Application Structure

Frontend

Backend

Debugging

Conclusion

Module 9 User-Defined Functions (UDFs)

Getting Started with UDFs

UDF Quickstart

Course Outline :: Python for excel ::

Case Study: Google Trends

Introduction to Google Trends

Working with DataFrames and Dynamic Arrays

Fetching Data from Google Trends

Plotting with UDFs

Debugging UDFs

Advanced UDF Topics

Basic Performance Optimization

Caching

The Sub Decorator

Course agenda

Time Day 1 Day 2 Day 3 Day 4 Day 5

9:00am -

10:30am

Module 1 Module 2 (cont.) Module 4 Module 5 Module 7

10:30am -

10:45am

Morning Break Morning Break Morning Break Morning Break Morning Break

10:45am -

12:30pm

Module 1 (cont.) Module 3 Module 4 (cont.) Module 5 (cont.) Module 7 (cont.)

12:30pm -

1:30pm

Lunch Break Lunch Break Lunch Break Lunch Break Lunch Break

1:30pm -

3:30pm

Module 1( cont.) Module 3 (cont.) Module 4 (cont.) Module 6 Module 7 (cont.)

3:30pm -

3:45pm

Afternoon Break Afternoon Break Afternoon Break Afternoon Break Afternoon Break

3:45pm -

5:00pm

Programme scope, delivery arrangements and suitability are confirmed during enquiry.