Python for Research and Analytics Training Course

Duration 10 days 20 modules · 65 contact hours
Level Intermediate Certificate on completion
Who attends Data Analysts, Research Officers and others
Fee from USD 2,200 KSh 190,000 for Kenyan organisations
Where 52 cities + online See dates by city
Next start 16 Nov 2026 Course code SD-DA-115

Before you join: Participants should be comfortable using spreadsheets, working with tables and interpreting basic charts and percentages.

Dates & prices

Two start dates a month in every city, and live online on weekdays or weekends. Fees are per participant; classroom fees include tuition, materials, lunch and refreshments, and the certificate.

Suggest a date or city

Showing the next six months. Later dates, other cities and private deliveries for your team are available on request.

Course overview

Research, policy, risk, operations and commercial teams often hold data in spreadsheets, databases, survey exports, public portals and application logs, yet struggle to turn it into evidence that can be checked and reused. Manual preparation creates version-control problems; untested assumptions produce weak conclusions; and static reports make it hard for decision-makers to inspect the drivers behind a result. Python provides a practical environment for joining, cleaning, analysing and communicating data while preserving a transparent record of the work.

This course teaches participants to build analytical workflows with Python, Jupyter notebooks, pandas, NumPy, SQL and selected scientific libraries. Participants prepare untidy datasets, test data quality, conduct exploratory analysis, apply statistical inference, fit regression and classification models, analyse time series, retrieve data from APIs, process text and create decision-ready visualisations. The course also addresses research design, reproducibility, version control, documentation and the interpretation of uncertainty. Cases use realistic public-sector, banking, NGO, customer and operational data problems.

Instruction is delivered over 10 days in the classroom or live online, with approximately 6.5 contact hours each day. Short instructor briefings establish techniques before participants apply them to guided cases, peer reviews and increasingly substantial analytical work. Participants build reusable code and notebooks from the first week, then deepen their analysis, validation and reporting methods during the second week. They leave with a completed analytical notebook, a documented data preparation workflow, visual outputs and a capstone analysis suitable for adaptation to their workplace. A certificate of completion is issued to participants who complete the course.

The course is suited to professionals who already work with data and need a disciplined Python-based method for research, reporting, analysis or evidence generation. It is particularly relevant where teams must explain how findings were produced, defend analytical choices and hand work to colleagues for review or reuse.

What you will be able to do

  • Build reproducible Python notebooks for data preparation, analysis and reporting
  • Clean and validate structured datasets using pandas quality-control methods
  • Apply descriptive statistics, hypothesis tests and confidence intervals to research questions
  • Fit and interpret regression, classification and time-series models
  • Query relational databases and combine SQL results with Python analysis
  • Create clear analytical charts using matplotlib and seaborn
  • Document analytical assumptions, data provenance and reproducibility controls
  • Present a complete evidence-based analysis with findings, limitations and recommendations

Benefits of attending

For you

  • Produce auditable analyses without relying on manual spreadsheet transformations
  • Apply statistical methods with clearer assumptions and interpretation
  • Build reusable notebooks for recurring research and reporting tasks
  • Explain model outputs, uncertainty and limitations to non-technical stakeholders
  • Create a work sample demonstrating practical Python analytical capability

For your organisation

  • Reduce manual data preparation and repeated spreadsheet reconciliation
  • Improve traceability of research findings, calculations and source data
  • Strengthen quality assurance before results reach management or external audiences
  • Create reusable analytical assets for recurring reporting and evaluation work
  • Support faster evidence generation from databases, APIs and operational datasets

Course modules

20 modules over 10 days

Participants can configure and use a Jupyter-based Python workflow for analytical work.

  • Jupyter notebooks organised with code, narrative, outputs and metadata
  • Python environments created with conda and project-specific package files
  • Kernel selection, package imports and reproducible notebook execution order
  • Relative file paths configured for portable analytical project structures
  • Markdown cells used to state questions, sources and analytical decisions
  • Notebook checkpoints, exports and restart-run validation procedures

Participants can write readable Python statements for routine analytical tasks.

  • Variables, numeric types and strings used in analytical calculations
  • Boolean logic and comparison operators applied to data conditions
  • Conditional statements control analytical rules and exception handling
  • Loops process repeated tasks while recognising vectorised alternatives
  • String formatting produces clear labels, messages and file names
  • Built-in functions inspected through signatures, docstrings and help

Participants can organise analytical code using appropriate Python structures and functions.

  • Lists, tuples, dictionaries and sets selected for analytical tasks
  • List comprehensions create transformed collections from source values
  • Functions package repeatable calculations with explicit inputs and outputs
  • Default arguments and keyword arguments improve function usability
  • Exceptions handled with try, except and informative error messages
  • Assertions test assumptions before downstream analytical processing

Participants can import common data formats and record their source characteristics.

  • CSV imports specify delimiters, encodings, headers and missing-value markers
  • Excel workbooks read from selected sheets, ranges and named columns
  • JSON records normalised into tabular structures for analysis
  • Date parsing converts source fields into consistent datetime values
  • Source files profiled for row counts, fields and data types
  • Data dictionaries document variables, units, codes and collection methods

Participants can transform tabular data into an analysis-ready pandas dataset.

  • DataFrames inspected using shape, dtypes, head and descriptive summaries
  • Column selection and boolean filtering isolate relevant analytical records
  • Missing values treated through deletion, imputation and explicit flags
  • Categorical variables recoded with mapping dictionaries and ordered categories
  • Groupby aggregations calculate counts, rates, totals and summary measures
  • Merge operations join datasets using validated key relationships

Participants can test dataset quality and document corrective treatment decisions.

  • Completeness checks measure missingness by field, record and subgroup
  • Validity rules test ranges, formats, permitted values and dependencies
  • Duplicate detection identifies repeated identifiers and near-identical records
  • Outlier screening compares distributions using IQR and z-scores
  • Reconciliation checks compare totals against authoritative source reports
  • Transformation logs record corrections, exclusions and unresolved limitations

Participants can profile distributions, relationships and subgroup patterns before modelling.

  • Frequency tables summarise categories, proportions and denominator choices
  • Central tendency compared using mean, median and trimmed mean
  • Dispersion measured through variance, standard deviation, IQR and percentiles
  • Cross-tabulations examine relationships between categorical research variables
  • Correlation matrices identify linear associations and potential multicollinearity
  • Stratified summaries reveal differences across regions, cohorts or segments

Participants can create charts that accurately communicate analytical findings.

  • Chart selection matches comparison, distribution, relationship and time questions
  • Bar charts display ranked categories with meaningful scales and labels
  • Histograms and boxplots reveal distributions, skewness and outliers
  • Scatterplots combine regression lines, grouping and transparency appropriately
  • Time-series charts show trends, seasonality and annotated events
  • Colour, ordering and annotation improve interpretation without distorting evidence

Participants can retrieve and aggregate relational data using SQL from Python.

  • Relational tables interpreted through entities, keys and cardinality relationships
  • SELECT, WHERE and ORDER BY retrieve defined analytical populations
  • GROUP BY calculations produce counts, sums, averages and rates
  • INNER and LEFT JOIN operations combine related source tables
  • Common table expressions structure multi-stage analytical queries clearly
  • Parameterized queries connect Python notebooks to SQLite databases safely

Participants can translate a research question into measurable variables and analytical choices.

  • Research questions framed with population, outcome, comparison and timeframe
  • Operational definitions distinguish constructs, indicators, measures and proxies
  • Measurement scales determine appropriate summaries, tests and visualisations
  • Sampling frames assessed for coverage, selection bias and nonresponse
  • Probability and non-probability sampling implications stated accurately
  • Confounding variables identified before causal claims are considered

Participants can select, run and interpret common statistical tests in Python.

  • Sampling distributions explain standard errors and confidence intervals
  • Null and alternative hypotheses specified before statistical testing
  • t-tests compare means while checking assumptions and effect sizes
  • Chi-square tests assess associations between categorical variables
  • p-values interpreted alongside confidence intervals and practical significance
  • Multiple-testing risks managed through planned comparisons and corrections

Participants can fit and interpret regression models for explanatory analysis.

  • Ordinary least squares models relate continuous outcomes to predictors
  • Categorical predictors encoded with reference groups and dummy variables
  • Regression coefficients interpreted with units, uncertainty and context
  • Residual diagnostics assess linearity, normality and heteroscedasticity assumptions
  • Interaction terms test whether effects differ between defined groups
  • Model comparison uses adjusted R-squared, AIC and validation evidence

Participants can analyse time-indexed data and produce defensible baseline forecasts.

  • Datetime indexes establish regular periods, gaps and aggregation choices
  • Trend, seasonality and irregular variation separated through visual inspection
  • Rolling means and rolling windows smooth volatile operational measures
  • Lag features represent previous-period values and delayed effects
  • Train-test splits preserve chronological order for forecast evaluation
  • Forecast accuracy measured using MAE, RMSE and MAPE

Participants can retrieve, inspect and store data from documented web APIs.

  • API documentation assessed for endpoints, parameters, limits and licences
  • HTTP GET requests retrieve structured data with requests
  • Query parameters filter API results by geography, date and category
  • JSON responses parsed into DataFrames with retained source metadata
  • Pagination handled to retrieve complete multi-page result sets
  • Status codes, retries and rate limits managed responsibly

Participants can prepare text data and extract basic themes and patterns.

  • Text cleaning standardises case, punctuation, whitespace and encoding
  • Tokenisation separates documents into analysable words and phrases
  • Stop-word lists and stemming choices documented for reproducibility
  • Term frequencies identify recurring topics within document collections
  • TF-IDF weights distinguish distinctive terms across documents
  • Keyword-in-context inspection checks automated findings against source text

Participants can join location data to boundaries and create basic thematic maps.

  • Coordinate reference systems selected before distance and area calculations
  • GeoJSON and shapefiles loaded into GeoPandas GeoDataFrames
  • Spatial joins connect point records with administrative boundary polygons
  • Choropleth maps display rates using defensible classification methods
  • Geocoding limitations, positional accuracy and privacy risks assessed
  • Map legends, scales and sources support accurate spatial interpretation

Participants can build and assess classification models for defined prediction tasks.

  • Prediction targets distinguished from explanatory and causal research outcomes
  • Train-validation-test partitions prevent optimistic performance estimates
  • Logistic regression estimates binary outcome probabilities and classifications
  • Decision trees reveal rule-based splits and feature interactions
  • Confusion matrices report precision, recall, specificity and accuracy
  • Class imbalance addressed through metrics, weights and resampling choices

Participants can prepare an analytical project for review, reuse and responsible handling.

  • Project folders separate raw data, processed data, code and outputs
  • Git commits record meaningful changes to notebooks and scripts
  • README files state purpose, setup steps, sources and limitations
  • Requirements files capture package versions for repeatable execution
  • Personal data minimisation follows purpose limitation and access controls
  • Bias, fairness and disclosure risks assessed before publishing findings

Participants can communicate findings, uncertainty and recommendations to decision-makers.

  • Analytical narratives connect question, method, findings and recommended action
  • Executive summaries state material results without overstating certainty
  • Chart captions explain measures, denominators, periods and source limitations
  • Sensitivity analyses show how assumptions affect key conclusions
  • Technical appendices document methods, code references and validation checks
  • Stakeholder questions anticipated through transparent interpretation and evidence

Participants can build, review and present a complete reproducible Python analysis addressing a defined professional question.

  • Problem statement defines decision, population, outcome and success criteria
  • Source data imported, profiled and documented within a structured notebook
  • Cleaning rules, quality checks and exclusions justified transparently
  • Exploratory findings guide statistical, predictive or time-series analysis choices
  • Visualisations and tables communicate material findings and uncertainty clearly
  • Peer review tests code, claims, limitations and reproducibility evidence

Exercises and examples are adapted to each cohort's sectors and roles.

What you take back to work

  1. Reproducible Jupyter notebook template
  2. Pandas data-cleaning workflow
  3. Data quality validation checklist
  4. Statistical analysis decision guide
  5. Analytical visualisation style guide
  6. Capstone research analysis portfolio

Who should attend

  • Data Analysts — need repeatable methods for cleaning, analysing and reporting organisational data
  • Research Officers — need transparent analytical workflows for surveys, administrative records and evaluations
  • Policy Analysts — need evidence-based analysis to assess programmes, populations and policy options
  • Risk and Compliance Analysts — need auditable data checks, models and exception reporting
  • Monitoring and Evaluation Specialists — need Python methods for indicator analysis and impact evidence
  • Business Intelligence Professionals — need deeper statistical and research methods beyond dashboard reporting

Skills and tools covered

Python data wranglingStatistical inferenceResearch reproducibilitySQL data analysisPredictive modellingAnalytical visualisation

Tools and standards

Python, Jupyter Notebook, pandas, Git

How the course runs

Training methodology

The course combines short technical briefings with instructor demonstrations, case-based analysis, group discussions and individual notebook development. Participants work with realistic datasets such as survey extracts, transaction records, service-delivery data and public indicators. Each technical method is followed by guided application, code review and interpretation of results. Trainers use diagnostic questions to address differing Python experience and help participants relate methods to their own data sources. The final sessions focus on structured peer review, presentation and workplace application planning.

Requirements and prerequisites

Participants should be comfortable using spreadsheets, working with tables and interpreting basic charts and percentages. They should understand simple algebra and be able to describe a business, research or operational question in measurable terms. Some prior Python experience is helpful, such as reading a script, using variables or running a notebook, but advanced programming is not assumed. The course starts with essential Python structures before moving quickly into analysis. Prior knowledge of SQL, statistics, machine learning, Git or research software is not required.

A typical training day

08:30 – 10:30First session
10:30 – 10:45Refreshment break
10:45 – 12:30Second session
12:30 – 13:30Lunch and networking
13:30 – 15:00Third session
15:00 – 15:15Refreshment break
15:15 – 16:30Workshop and daily review

Live online deliveries follow the same structure in East Africa Time, with shorter screen blocks and longer breaks.

What the fee includes

  • Instruction by a practitioner facilitator
  • Full course workbook and materials
  • Exercise files, templates and case studies
  • Refreshments and lunch on classroom deliveries
  • Certificate of completion
  • Post-course application plan

Frequently asked questions

You should be comfortable with spreadsheets, tabular data and basic quantitative concepts. Prior exposure to Python is helpful, but the course begins with the programming structures needed for analysis before progressing to pandas, statistics and modelling.

Bring a laptop capable of running Python and Jupyter notebooks, plus a charger. Participants may also bring a non-sensitive dataset or an analytical question from work, subject to their organisation's data-sharing rules.

The course is designed for analysts, researchers, policy staff, monitoring and evaluation specialists, risk professionals and business intelligence practitioners. It suits people who need to produce evidence from data rather than develop production software applications.

A general programming course concentrates on software-development concepts such as object-oriented design, application architecture and testing frameworks. This course focuses on research workflows, data preparation, statistical analysis, visualisation, reproducibility and interpretation.

Participants can apply the notebook structure, data-quality checks, pandas transformations and reporting methods to recurring analyses immediately. The capstone approach can also be adapted to programme evaluation, customer analysis, risk monitoring, service performance or survey research.

The first week establishes Python, notebook workflow, data preparation, quality checks, exploratory analysis, visualisation and SQL. The second week covers research design, statistics, modelling, APIs, text and geospatial analysis, reproducibility, reporting and the final capstone presentation.

Questions about this course?

Ask about dates, fees, group bookings or running it for your team. Our training team replies by email.