Python Programming for Data Scientists and Developers

Python Programming for Data Scientists and Developers

Venue Upper Hill, Nairobi, Kenya
Duration 10 days, Mon-Fri, 8:30am-4:30pm
Charges (Nairobi) $1750 + 16% VAT
Charges (Online) $1250 + 16% VAT
Contacts training@stemxresearch.com
Call / WhatsApp +254 721 462 424

Course description

Python Programming for Data Scientists and Developers is a comprehensive course designed to introduce participants to the Python programming language and its application in data analysis. The course covers everything from the installation of Python and Jupyter to advanced data manipulation and statistical analysis. Through hands-on practice, learners will explore Python's data types, structures, user-defined functions, and error handling, as well as techniques for data wrangling, cleaning, and exploratory data analysis. Emphasis is placed on practical skills with real-world datasets, enabling participants to perform sophisticated data analyses and build predictive models using Python.

Course objectives

By the end of this course, you will be able to:

  • Install Python and Jupyter IDE and understand its user interface.
  • Identify and work with different data types and data structures in Python including vectors, factors, matrices, data frames, tibble, and so forth.
  • Load/export data from/to various sources, save, and explore datasets.
  • Recognize and handle errors in Python effectively using control statements and error-handling functions.
  • Utilize conditional and repetitive control structures, such as if, if ... else, if ... elif ... else, for, and while loops, to automate tasks and make scripts more efficient.
  • Perform essential data wrangling tasks, renaming and generating variables, and recoding data for analysis.
  • Select and manipulate specific variables and observations to create focused subsets of data for detailed analysis.
  • Identify and resolve common data quality issues such as missing values, inconsistent data types, duplicates, and outliers.
  • Merge and concatenate datasets effectively, using various join techniques to combine data from multiple sources.
  • Conduct exploratory data analysis (EDA) including frequency tabulation, and descriptive statistics to uncover insights from data.

Target groups

The course is designed for:

  • Data Analysts: Professionals looking to enhance their data analysis skills using Python for more efficient and accurate data manipulation and visualization.
  • Researchers: Individuals who need to process and analyze large datasets as part of their research projects.
  • Statisticians: Statisticians who want to deepen their understanding of statistical methods and apply them using Python.
  • Students: Those studying data science, statistics, or related fields who require a solid foundation in Python programming for their coursework and projects.

Course requirements

To get the best out of the course, the following will be required:

  • Dedication: This course demands a significant commitment to learning and practice, and a serious level of dedication and concentration throughout the workshop sessions.
  • Problem-Solving Skills: Be prepared to tackle complex data challenges.
  • Basic Programming Knowledge: While not strictly necessary, prior programming experience will be beneficial.

Course outline

  1. Fundamentals of the Python Programming Language
    1. Installation and Jupyter Interface
      1. Download and install Python
      2. Download and install Anaconda distribution
      3. Integrated Development Environments (IDEs) for Python coding
      4. The Jupyter interface
    2. Getting started with Python
      1. About Python
      2. Diving into Python
      3. Python modules
      4. Comments in Python
      5. Breaking code into multiple lines
      6. Error handling
      7. Whitespace
      8. Indentation
      9. Obtain help in Python
    3. Data types
      1. Numbers
      2. Strings
    4. Data structures
      1. Range
      2. List
      3. Tuple
      4. Dictionary
      5. Set
    5. Introduction to date and time
      1. Getting started
      2. Current date and time
      3. Get date from timestamp
      4. Get year, month and day from date
      5. Difference between two dates
      6. Representing time
      7. Formatting date and time
      8. Time zones
    6. Regular expressions
      1. Introduction
      2. RegEx functions
      3. RegEx metacharacters
      4. RegEx special sequences
      5. RegEx application examples
    7. User defined functions
      1. Introduction
      2. Scope of variables
      3. Structure of Python functions
      4. Calling functions
      5. Function arguments
      6. Subfunctions
      7. Create Python modules
  2. Data Wrangling and Cleaning using Pandas Part I
    1. Introduction
      1. Overview of data wrangling and cleaning
      2. What is data cleaning?
      3. Understand data type
      4. What we are going to learn
    2. Pandas Series
      1. What is a Pandas Series?
      2. Create Pandas Series
      3. Common Series tasks
      4. Sort Series
      5. Indexing and slicing a Series
      6. Statistical functions applied to Series
      7. Other functions
    3. Pandas DataFrame
      1. What is a Pandas DataFrame?
      2. Create a DataFrame
      3. Important DataFrame methods
      4. Import data sets into Pandas
      5. Export Pandas DataFrame
      6. Save to Pickle
      7. Load Pickle into Pandas
    4. Manipulating and Transforming DataFrames Part I
      1. Introduction
      2. Assign New Row Index
      3. Rename Columns
      4. Create Subset DataFrames
      5. Drop Observations / Rows
      6. Drop Columns Using String Functions
      7. Sample a DataFrame
      8. Split DataFrame with groupby() Function
  3. Data Wrangling and Cleaning using Pandas Part II
    1. Manipulating and Transforming DataFrames Part II
      1. Generate New Columns
      2. Insert Columns at Specified Location
      3. Replace Column Values
      4. Assign Ranks to a Column
      5. Sort DataFrames
      6. Relocate Columns
      7. Transpose DataFrames
      8. Stack and Unstack DataFrame Columns
      9. Reshape DataFrames
    2. Detecting Data Quality Issues and Handling Them
      1. Rename Variables
      2. Inconsistent Data Types
      3. Missing Values
      4. Apply Functions to Series / DataFrame
      5. Outliers
      6. Duplicates
      7. Scale Numerical Variables
      8. String Manipulation in Pandas
    3. Extended Generation of Variables
      1. Generate Columns by Row-Wise Operations
      2. Add Multiple Columns with assign() Method
      3. Generate Columns with Conditions
      4. Generate Dummy Variables
      5. Split Strings into Separate Columns
      6. Multiple Response Questions
      7. Concatenate Columns
    4. Combine DataFrames (Concatenate and Merge)
      1. Vertical Join (Concatenate)
      2. Horizontal Joins (Merging)
        1. Inner Join
        2. Outer (Full) Join
        3. Left Join
        4. Right Join
        5. Merge More Than 2 DataFrames
      3. One to Many Merging
      4. Many to One Merging
      5. Many to Many Merging
  4. Exploratory Data Analysis
    1. Tabulation of Frequencies
      1. Introduction
      2. One Way Frequency Tables
      3. Two Way Frequency Tables
        1. Calculating Frequencies
        2. Adding Row Percentage to Two Way Contingency Tables
        3. Adding Column Percentage to Two Way Contingency Tables
    2. Descriptive Statistics
      1. Introduction
      2. Tables of Statistics
        1. Minimum, Maximum, Mean and Standard Deviation
        2. Minimum, Maximum, Median and Inter-Quartile Range
        3. Multiple Categorical Variables
        4. Multiple Quantitative Variables
      3. Calculating p-values
    3. Analysis of Multiple Response Questions
      1. One Way Frequencies
      2. Calculate Associations
  5. Way forward

StartDateEndDateChargesEnroll
VENUE: Nairobi, Kenya (Upper Hill)
07Apr202518Apr2025$1750Enroll
02Jun202513Jun2025$1750Enroll
04Aug202515Aug2025$1750Enroll
06Oct202517Oct2025$1750Enroll
01Dec202512Dec2025$1750Enroll
VENUE: Online (Zoom)
05May202516May2025$1250Enroll
07Jul202518Jul2025$1250Enroll
01Sep202512Sep2025$1250Enroll
03Nov202514Nov2025$1250Enroll

StartDateEndDateChargesEnroll
VENUE: Nairobi, Kenya (Upper Hill)
21Apr202502May2025$1750Enroll
16Jun202527Jun2025$1750Enroll
18Aug202529Aug2025$1750Enroll
20Oct202531Oct2025$1750Enroll
15Dec202526Dec2025$1750Enroll
VENUE: Online (Zoom)
17Mar202528Mar2025$1250Enroll
19May202530May2025$1250Enroll
21Jul202501Aug2025$1250Enroll
15Sep202526Sep2025$1250Enroll
17Nov202528Nov2025$1250Enroll

StartDateEndDateChargesEnroll
VENUE: Nairobi, Kenya (Upper Hill)
07Apr202518Apr2025$1750Enroll
02Jun202513Jun2025$1750Enroll
04Aug202515Aug2025$1750Enroll
06Oct202517Oct2025$1750Enroll
01Dec202512Dec2025$1750Enroll
VENUE: Online (Zoom)
05May202516May2025$1250Enroll
07Jul202518Jul2025$1250Enroll
01Sep202512Sep2025$1250Enroll
03Nov202514Nov2025$1250Enroll

StartDateEndDateChargesEnroll
VENUE: Nairobi, Kenya (Upper Hill)
21Apr202502May2025$1750Enroll
16Jun202527Jun2025$1750Enroll
18Aug202529Aug2025$1750Enroll
20Oct202531Oct2025$1750Enroll
15Dec202526Dec2025$1750Enroll
VENUE: Online (Zoom)
17Mar202528Mar2025$1250Enroll
19May202530May2025$1250Enroll
21Jul202501Aug2025$1250Enroll
15Sep202526Sep2025$1250Enroll
17Nov202528Nov2025$1250Enroll

StartDateEndDateChargesEnroll
VENUE: Nairobi, Kenya (Upper Hill)
07Apr202518Apr2025$1750Enroll
02Jun202513Jun2025$1750Enroll
04Aug202515Aug2025$1750Enroll
06Oct202517Oct2025$1750Enroll
01Dec202512Dec2025$1750Enroll
VENUE: Online (Zoom)
05May202516May2025$1250Enroll
07Jul202518Jul2025$1250Enroll
01Sep202512Sep2025$1250Enroll
03Nov202514Nov2025$1250Enroll

StartDateEndDateChargesEnroll
VENUE: Nairobi, Kenya (Upper Hill)
21Apr202502May2025$1750Enroll
16Jun202527Jun2025$1750Enroll
18Aug202529Aug2025$1750Enroll
20Oct202531Oct2025$1750Enroll
15Dec202526Dec2025$1750Enroll
VENUE: Online (Zoom)
17Mar202528Mar2025$1250Enroll
19May202530May2025$1250Enroll
21Jul202501Aug2025$1250Enroll
15Sep202526Sep2025$1250Enroll
17Nov202528Nov2025$1250Enroll