Course · Beginner · Foundations
Data Analysis Foundations for M&E
Load, clean and summarise routine programme data in both Python and R, then turn it into the indicator tables a donor report actually needs.
What you will be able to do
- Read programme exports from CommCare, KoboToolbox and DHIS2 into a tidy table without corrupting identifiers, dates or missing-value codes
- Diagnose and document the data quality problems routine data always carries, and quantify what each one costs the final number
- Decide what to do about a defect and record that decision in a cleaning log a data auditor can follow
- Produce a disaggregated indicator table that matches a logframe definition, with numerator and denominator stated explicitly
- Reproduce the same analysis in Python and in R, and rerun it on next quarter's export without editing it
Standards and methodologies
Routine programme data rarely arrives clean. This course starts from the exports you already have — a CommCare form dump, a KoboToolbox CSV, a DHIS2 pivot — and works through to an indicator table you can defend in a donor review.
Every technique is taught twice, once in Python and once in R, because M&E teams are split across both and you will inherit whichever the last officer used.
Almost every example runs against one dataset: a synthetic MUAC screening register from twelve communes in Artibonite, Haiti, carrying the missing values, unit errors, duplicate registrations and contradictory outcome codes a real campaign register carries. Working the same file from raw export to defended indicator is the point — you see what each decision costs, because you see the number move.
The course assumes no prior programming experience. It does assume you have had to answer for a number in front of someone who did not want to hear it.
Practice
Reading the lessons is not the same as having done the work. Each of these applies the course to a dataset it did not teach on.
- Lab · 50 minApplying MUAC thresholdsA hands-on lab classifying a real-shaped MUAC dataset against WHO thresholds, then checking how the GAM rate moves when you handle missing values differently.
- Exercise · 30 minPick the right denominatorFive reporting scenarios where the numerator is agreed and the denominator is not. Choose one, justify it, and state what your choice excludes.
Progress
Take it offline
The whole course as a typeset PDF — every lesson, every code example, the data dictionary and the indicator definitions. Generated from the same source as this page.
The LaTeX source ships alongside each PDF, so an organisation can rebrand the handout or fold a lesson into its own training pack.