Schedule - Introduction to Python
Day 1
| Time | Topic | Instructor |
|---|---|---|
| 10:00 - 10:15 | Workshop Introduction | Will |
| 10:15 - 10:45 | Introduction to Python and Jupyter Lab | Will |
| 10:45 - 10:50 | Break | |
| 10:50 - 11:25 | Variables | Noor |
| 11:55 - 12:00 | Overview of self-learning materials and homework submission | Will |
Before the next class:
I. Please study the contents and work through all the code within the following lessons:
-
NoteClick here for a preview of this lesson
This lesson introduces conditional logic in Python, showing how to use if, elif, else, comparison operators and logical operators to evaluate conditions.
In this lesson, we will:
- Create conditional statements using
if,elifandelse - Use the
inoperator to check for membership in a collection - Use logical operators to test multiple conditions at the same time
- Create conditional statements using
- Submit your work:
- Each lesson above contains exercises; please go through each of them.
- Submit your answers to the exercises using this Google form on the day before the next class.
Questions?
- If you get stuck due to an error while running code in the lesson, email us
Day 2
| Time | Topic | Instructor |
|---|---|---|
| 10:00 - 10:30 | Self-learning lessons discussion | All |
| 10:30 - 11:00 | Data Structures | Noor |
| 11:00 - 11:05 | Break | |
| 11:05 - 11:55 | Loops | Will |
| 11:55 - 12:00 | Overview of self-learning materials and homework submission | Will |
Before the next class:
I. Please study the contents and work through all the code within the following lessons:
-
NoteClick here for a preview of this lesson
This lesson explains how functions work in Python, from calling built-in functions with arguments to defining your own reusable functions to organize and simplify code.
In this lesson, you will:
- Describe and utilize functions in Python
- Modify default behavior of a function using arguments
- Identify Python-specific sources of obtaining more information about functions
- Demonstrate how to create user-defined functions in Python
Loading and Installing Libraries
NoteClick here for a preview of this lessonThis lesson introduces Python libraries, showing how to install packages, import them into your environment and explore library functions to extend Python functionality for data analysis.
In this lesson, you will:
- Explain different ways to install external Python libraries
- Demonstrate how to load a library and how to find functions specific to a library
- Submit your work:
- Each lesson above contains exercises; please go through each of them.
- Submit your answers to the exercises using this Google form on the day before the next class.
Questions?
- If you get stuck due to an error while running code in the lesson, email us
Day 3
| Time | Topic | Instructor |
|---|---|---|
| 10:00 - 10:30 | Self-learning lessons discussion | All |
| 10:30 - 11:00 | NumPy Arrays |
Will |
| 11:00 - 11:05 | Break | |
| 11:05 - 11:55 | Pandas DataFrames |
Noor |
| 11:55 - 12:00 | Overview of self-learning materials and homework submission | Will |
Before the next class:
I. Please study the contents and work through all the code within the following lessons:
-
NoteClick here for a preview of this lesson
This lesson focuses on wrangling linked datasets with
pandas, including filtering, reordering, saving cleaned tables and merging DataFrames to prepare real data for analysis.In this lesson, you will:
- Reorder related datasets to ensure that they are in the same order
- Extract specific rows from a DataFrame using the
isinoperator - Save a DataFrame as a new CSV file
- Use the
merge()function to combine two DataFrames
Plotting basics with
MatplotlibandSeabornNoteClick here for a preview of this lessonThis lesson introduces data visualization in Python using
MatplotlibandSeaborn, showing how to build scatterplots, adjust aesthetics and customize labels to create clear figures.In this lesson, you will:
- Explain the concept of layering in plotting and how to build a plot step by step
- Create a scatterplot using
MatPlotLiband customize its aesthetics withSeaborn - Apply different themes to a plot and adjust axis labels and titles
-
NoteClick here for a preview of this lesson
This lesson shows how to create and customize boxplots with Matplotlib and Seaborn to visualize distributions, identify outliers and adjust colors.
In this lesson, you will:
- Generate a boxplot
- Customize the aesthetics of a boxplot
- Find hexadecimal codes for colors and use them to change the colors of a boxplot
- Submit your work:
- Each lesson above contains exercises; please go through each of them.
- Submit your answers to the exercises using this Google form on the day before the next class.
Questions?
- If you get stuck due to an error while running code in the lesson, email us
Day 4
| Time | Topic | Instructor |
|---|---|---|
| 10:00 - 10:45 | Self-learning lessons discussion | All |
| 10:45 - 10:50 | Break | |
| 10:50 - 11:40 | Machine Learning - Random Forests | Noor |
| 11:40 - 11:50 | Discussion, Q & A | All |
| 11:50 - 12:00 | Wrap-up | Will |
Resources
Popular package resources
For a brief overview, or cheat sheet, of the most commonly used Python packages in data analysis, check out the following resources:
Other Python courses
We acknowledge that there are many other groups that have created excellent Python courses:
Learning more AI and ML
Python is one of the most popular languages for machine learning and artificial intelligence. If you are interested in learning more about these topics, we recommend the following resources as good starting points:
Datasets for more practice
There are many websites that aggregate interesting datasets that you can use to practice your Python skills. Here are a few popular ones: