Fine particulate matter — PM2.5, particles smaller than 2.5 micrometers in diameter — is one of the most harmful air pollutants to human health. At that size, particles penetrate deep into the lungs and enter the bloodstream, contributing to respiratory disease, cardiovascular illness, and premature death. Ground-based monitoring networks provide the most accurate local measurements, but they are sparse or absent across much of the world. Satellite-derived PM2.5 estimates fill that gap, offering spatially continuous coverage that can characterize air quality conditions even in regions with no surface monitors at all. This repository contains the Python notebooks developed for the 2026 NASA ARSET online training, Estimating Surface PM2.5 Using Satellite Data and Other Information Sources. The training was developed by Carl Malings (Morgan State University & NASA Goddard Space Flight Center) and Sebastián Diez (Centro de Investigación en Tecnologías para la Sociedad, Universidad del Desarrollo, Chile). It teaches participants how to programmatically access satellite-derived PM2.5 products, subset them to a region and time period of interest, retrieve co-located ground-based measurements, and compare the two sources to evaluate data product performance.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/NASAARSET/PM2.5_AQ_Online_2026/llms.txt
Use this file to discover all available pages before exploring further.
What You Will Learn
By completing this training, participants will be able to:- Access and download two NASA satellite-derived PM2.5 datasets programmatically using Python
- Subset multi-dimensional gridded NetCDF data to a custom bounding box and time range with
xarray - Retrieve ground-level PM2.5 measurements from the OpenAQ API and other networks
- Overlay gridded satellite estimates with point-based monitor data on cartographic maps
- Compute standard performance metrics — bias, RMSE, R², spatial and temporal correlation — to evaluate how well satellite estimates track surface measurements
- Recognize scenarios (such as wildfire episodes) where data source choice affects analytical conclusions
Data Products
The training focuses on two complementary satellite-derived PM2.5 datasets that differ in spatial resolution, temporal resolution, and methodology.SatPM V6.GL.03
A global, monthly-average PM2.5 product with fine spatial resolution. Files are distributed as NetCDF via an S3 bucket and downloaded directly within the notebook using
urllib. The variable of interest is PM25; negative values are masked before analysis. Notebooks access files at the URL pattern:MERRA-2 CNN Hourly
The
MERRA2_CNN_HAQAST_PM25 product provides hourly, near-surface PM2.5 estimates derived from the MERRA-2 reanalysis using a convolutional neural network. Data are accessed via NASA Earthdata using the earthaccess Python package. The key variable is MERRA2_CNN_Surface_PM25; only records with quality flag QFLAG >= 3 are retained.Both products store data in NetCDF format and are loaded with
xarray. The F_subset_and_combine helper function defined in the notebooks handles spatial and temporal subsetting across multiple monthly files, then concatenates them into a single xarray.Dataset for analysis.Case Studies
The training uses two real-world events that illustrate contrasting pollution regimes: one driven by wildfire smoke and one by persistent urban air pollution.Case Study — Chile Megafires (February 2023)
Chile experienced a catastrophic wildfire season in early 2023. The case study notebook focuses on the south-central Chile region covering the megafire-affected area, with analysis extending from December 2022 through March 2023 to capture pre-fire, during-fire, and post-fire periods.| Parameter | Value |
|---|---|
| Latitude range | −38° to −32° S |
| Longitude range | −73.75° to −69.75° W |
| Time period | 2022-12-01 to 2023-03-31 |
| Time zone | America/Santiago |
| Ground truth | SINCA (Chilean national network) + OpenAQ |
Homework — New Delhi, India (June–August 2019)
The homework notebook applies the same workflow to New Delhi and surroundings, one of the most severely polluted urban regions in the world. Participants fill in the bounding-box and time-range cells themselves as part of the exercise.| Parameter | Value |
|---|---|
| Latitude range | 27.5° to 30° N |
| Longitude range | 76° to 78.5° E |
| Time period | June–August 2019 |
| Ground truth | OpenAQ (reference monitors) |
Bilingual Availability
All notebooks — Case Study and Homework — are available in both English and Spanish (Español), reflecting NASA ARSET’s commitment to broadening access to Earth science training in Latin America and other Spanish-speaking communities.Case Study (English)
Open the Case Study exercise notebook in Google Colab (English).
Case Study (Español)
Abrir el cuaderno de ejercicios del Caso de Estudio en Google Colab (Español).
Homework (English)
Open the Homework exercise notebook in Google Colab (English).
Homework (Español)
Abrir el cuaderno de tarea en Google Colab (Español).
Notebook Structure
Each notebook follows the same four-part structure, keeping both the Case Study and Homework consistent and easy to follow:Setup
Install
cartopy and earthaccess, import all required packages, mount Google Drive, authenticate with NASA Earthdata, and store the OpenAQ API key.Define Domain of Interest
Set the bounding box (
n_lat_min, n_lat_max, n_lon_min, n_lon_max), the analysis time window (t_start, t_end), and the local time zone (s_timezone). Call F_plot_map to visually confirm the region before downloading any data.Download Data
Download SatPM monthly files from S3, download MERRA-2 CNN hourly files via
earthaccess, and retrieve ground monitor data from OpenAQ (and, in the Case Study, from SINCA). All files are cached to Google Drive to avoid re-downloading on subsequent runs.Explore the Documentation
Quickstart
Open your first notebook in Google Colab and run the setup cell in minutes.
Environment Setup
Detailed guide to Google Drive folder structure, Python packages, and credential configuration.
Official Training Page
Register and access the full NASA ARSET course materials on NASA Earthdata.
