0% found this document useful (0 votes)
2 views

PythonAdvanced-CourseOutline261023

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

PythonAdvanced-CourseOutline261023

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

[Type here] Course Outline

Python
Advanced Level

Duration: 1 Day (9am – 4pm)

Course Pre-Requisites: Knowledge of Python at an intermediate


level is recommended for this course.

Course Overview
Following on from our Python Beginner and Python Intermediate courses, Python Advanced
will build on your knowledge of Python and pandas. The focus of this course is learning to
work more efficiently in Python. You will learn to use control flow structures and loops and
write your own custom functions and classes to automate analyses and improve efficiency.

1. Introduction (10 Mins)


As the world of data continues to evolve, the importance of working more efficiently in
Python has become paramount. Many professionals are turning to automation to handle
frequent data analysis operations, streamlining their workflows, and reducing manual effort.
By understanding and implementing the core principles of efficient coding, one can
significantly enhance their productivity and ensure that their analyses are both robust and
time effective.

2. User Defined Functions (2 Hrs)


In this module, we'll delve into the intricacies of crafting user-defined functions in Python.
Starting with discerning when to design your own functions, students will gain insights into
the foundational aspects, including parameters and the distinction between positional and
keyword arguments. The course will guide you through the steps to proficiently define
functions, emphasising the significance of indentation and understanding variable scope.
We'll also navigate through advanced concepts like “args” and “kwargs”, data unpacking,
and the sequence of arguments. To bolster clarity and best practices, participants will be
introduced to the importance of docstrings and assertions. Additionally, the course touches
upon techniques for reusing functions and the utility of lambda expressions for concise
function definition. This segment promises a thorough grounding in the art and science of
Python functions.

Aust: nexacu.com.au E: info@nexacu.com Global: nexacu.com


[Type here] Course Outline

3. Loops and Other Control Structures (2 Hrs)


In this section of the course, participants will immerse themselves in the dynamic world of
loops and control structures. We'll initiate our exploration with the foundational conditional
statements, setting the stage for more complex control mechanisms. Moving forward, you'll
delve into the versatile for loop, understanding its applications over various sequences,
ranges, and even specialised tasks like looping over pandas groups or multiple lists
simultaneously. The utility of enumerate in loops will also be highlighted, offering insights
into its value in iterative tasks. The course then shifts focus to the while loop, describing its
unique characteristics and applications. Essential control keywords like else, break, and
continue will be dissected, ensuring students can modify loop behaviours efficiently. We'll
also cover practical skills, such as saving results from a loop and seamlessly combining
loops with functions. By the end of this module, students will be adept at harnessing the
power of loops and control structures in Python to optimise their coding tasks.

4. Loop and “if-else” Alternatives (45 Mins)


Venture into the realm of efficient Python programming with this module, where we explore
alternatives to traditional loops and if-else structures. Participants will be introduced to
NumPy functions like np.where() and np.select(), which offer streamlined ways to handle
conditionals. The elegance of conditional expressions will be showcased, followed by the
power and brevity of list comprehensions. Students will also familiarise themselves with
Python's built-in map() function, a tool that can significantly enhance code simplicity and
readability. As we emphasise performance, the module will guide learners through
evaluating efficiency, using tools like IPython and its magic commands. Delving into pandas,
we will explore the utility of pandas map(), and the versatility of pandas apply() and
applymap(). By the end of this section, students will be equipped with a range of techniques
to write cleaner, more efficient Python code, minimising reliance on conventional loops and
if-else constructs.

5. User-Defined Classes (30 Mins)


This module delves deep into the object-oriented facet of Python, focusing on user-defined
classes. Participants will kick off their journey by understanding the scenarios where crafting
a personal class is beneficial. As we progress, students will be guided on the nuances of
defining classes, accompanied by the best practices of adding descriptive docstrings. A
special emphasis will be placed on the foundational __init__() method, which plays a pivotal
role in object instantiation. Alongside, the significance of the self parameter, which is central
to class methods, will be highlighted. Through practical examples, learners will navigate the
world of class objects, exploring attribute references, and the process of instantiation. This
journey will be enriched by a deeper look into data attributes and methods, understanding
their roles within classes. The concept of scope within classes will be detailed, ensuring
clarity in variable accessibility. Rounding off the module, the intriguing world of dunder
(double underscore) methods will be unveiled, shedding light on their unique functionalities
in custom classes. By the end of this segment, participants will be adept at designing and
implementing their own Python classes with confidence.

Aust: nexacu.com.au E: info@nexacu.com Global: nexacu.com


[Type here] Course Outline

6. Performing Multiple Operations on DataFrames (20 Mins)


In this module, we'll explore the power and flexibility of pandas, a cornerstone library in
Python for data manipulation, focusing on how to efficiently perform multiple operations on
DataFrames. Participants will be introduced to the concept of method chaining, a technique
that enhances code readability while allowing sequential operations on a DataFrame without
intermediate variable assignments. Building on this, the course will delve into the use of
pandas pipes, showcasing how they can be seamlessly integrated with custom functions.
This allows for a modular approach to data transformation, where you can apply
user defined operations in a clean and streamlined manner. By the end of this section,
students will have honed their skills in DataFrame manipulation, enabling them to tackle
complex data tasks with elegance and efficiency.

7. Interactive Visualisations with Bokeh (30 Mins)


Dive into the world of Bokeh, a premier Python visualisation tool. This module will guide
participants through the essentials of Bokeh, its integration with Jupyter, and the importance
of glyphs as visualisation elements. Learn to manage data effectively for these glyphs and
harness the power of the Bokeh toolbar, customising it for enhanced interactivity. We'll touch
upon linking plots, utilising interactive legends, and adding tooltips for enriched user
experience. The course also covers visualising grouped pandas DataFrames and saving
your Bokeh creations. By the end, you'll be well-equipped to create and share captivating,
interactive Bokeh visualisations.

Aust: nexacu.com.au E: info@nexacu.com Global: nexacu.com

You might also like