How Pratirodh reads a drain
From a bottle of drain water to a cell on the map, what is computed from it, the test written down before looking, and what none of it can say.
From a drain to a number
the four steps behind every cell on the map
1 · A bottle from a drain
One grab sample from one open city drain on one day. 447 of them, March 2022 to March 2024, published by CSIR-CCMB.
2 · Everything in it is read
The DNA of every microbe in the bottle is sequenced in short stretches, called reads.
3 · Matched to a catalogue
Reads are matched against CARD, the open catalogue of known resistance genes, as the authors annotated them. 3,354 distinct genes turn up at least once.
4 · Counted per million
Matching reads per million bacterial reads, so a big sample and a small one compare. A month's cell is its median sample.
What is computed
units are this dataset's own; another study's numbers are never put on the same axis
All resistance genes
Reads matching any resistance gene, per million bacterial reads in the sample; the month's median sample.
Last-resort genes
The same count for these named families only. Named, because the catalogue's broad "carbapenem" label also covers enzymes that do not break carbapenems.
By drug class
The share of a month's resistance-gene reads from genes against each class. A gene can act on several classes, so the shares add up to more than 100%.
Rain, temperature
ERA5 daily values over the city's districts, summed or averaged by calendar month. A month with a missing day is left missing.
The registered analysis
written down before the data was loaded
The question
Chennai's rains come October to December; the other three cities' come June to September. If resistance in the drains follows the rain, Chennai's pattern should be shifted. The test, and what counts as a yes, were written down before the data was loaded.
Read the plan in full
Pratirodh — pre-registered seasonal analysis
Registered 27 Sep 2026, before the CCMB data were downloaded. The commit that adds this file is the timestamp. Any change after that is a new, dated commit to this file, with the reason, and the results page lists every change.
Question
Does monthly antibiotic-resistance-gene load in open-drain wastewater track each city’s rainfall?
Hypothesis
H1. In each city, monthly total resistance-gene load (pratirodh_arg_load, the dataset’s own
normalised unit) is associated with that city’s monthly rainfall at a lag of 0, 1 or 2 months.
H2. If H1 holds, Chennai’s seasonal peak in load is offset from Delhi’s, Mumbai’s and Kolkata’s by roughly the gap between the northeast monsoon (Oct–Dec) and the southwest monsoon (Jun–Sep).
The direction is not assumed: heavy rain may dilute drains (load down) or wash resistance in from land and sewers (load up). The sign is estimated, and reported whatever it is.
Data
- Outcome: CCMB wastewater metagenomes (Singh, Garg et al., Nat Commun 2026; Zenodo 17590646, CC BY 4.0). 447 samples, 19 sites in 4 cities, monthly, Mar 2022 to Mar 2024. City-month load is the dataset’s own city-month aggregate where it provides one; otherwise the median over that city’s sites that month. Samples failing the authors’ QC are excluded as the authors excluded them.
- Rainfall (primary): ERA5 daily precipitation summed to calendar months, averaged over each city’s area (coverage-weighted over the LGD districts that make up the city: Delhi’s 13 districts, Mumbai City + Mumbai Suburban, Kolkata, Chennai). Computed and stored before the outcome is loaded.
- Rainfall (check): IMD gridded rainfall, where its licence allows, as a sensitivity analysis only.
- Temperature: ERA5 monthly mean 2 m temperature over the same area, as a covariate.
Analysis
- Per city, Spearman correlation between monthly load and rainfall at lags 0, 1 and 2 months (rainfall leading). Three lags × four cities = 12 tests; p-values are Holm-adjusted across all 12. Point estimates with 95% intervals by block bootstrap (3-month blocks, 2,000 resamples).
- Across cities: a linear mixed model, log(load) ~ rainfall(lag k) + temperature + (1 | city), fitted for k = 0, 1, 2; the lag reported is the one with the lowest AIC, and all three are shown. A second model replaces rainfall with monsoon phase (in-season / out-of-season for that city’s own monsoon) as the fixed effect of interest.
- H2: for each city, the month of peak load in a harmonic fit (one annual sine + cosine) and its bootstrap interval; the Chennai offset is the difference between its peak month and the mean of the other three cities’ peak months.
What counts as support
- H1 is supported only if the same-sign lagged association holds in at least 3 of the 4 cities at one common lag, with the Holm-adjusted p < 0.05 in at least 2 of them, and the mixed-model rainfall coefficient’s 95% interval excludes zero.
- H2 is supported only if Chennai’s peak-month interval does not overlap the pooled peak-month interval of the other three cities, and the offset is in the direction of the northeast monsoon.
Confounders, stated in advance
- Dilution: heavy rain lowers concentration in open drains without changing what is shed.
- Seasonal antibiotic use: fever and diarrhoea seasons overlap the monsoon, so rain and prescribing move together. This analysis cannot separate them; a positive result is an association, not a mechanism.
- Two years is about two monsoon cycles per city. Power is low. All results are exploratory and are labelled that way wherever they appear.
Kill rule
If H1 is not supported, the null is published as part of the data descriptor, with the full per-city table, and the third paper (the seasonal analysis) is dropped. The atlas keeps showing the city series beside rainfall, without any claim about a relationship.
Not in this analysis
No site-level model (19 sites, one grab sample per site-month, is too thin). No gene-by-gene tests (they would be a new registration). No data from any other dataset.
Status
not run yetregistered 27 September 2026 at 16:01 IST, commit c9027abe
Not changed since. The map shows rain and resistance side by side, and makes no claim about them until it is run.
The evidence map
published studies of resistance in India's environment found by one registered search of indexed papers · open the map
Searched
714records from Europe PMC
With the exact search string written in the protocol before the search was run.
Screened
Every record has a decision and a one-line reason. One screener in this round, Maplore's own; no second independent screener yet.
Mapped
63of 790 districts have at least one study
A study is placed at the finest level its paper supports; 39 name no place that can be read at all. The protocol.
Results are not pooled and places are not ranked by resistance: studies use different methods and units, and their numbers are never put on one axis. A hospital is mapped at its city or district, never named.
Limits
- A single grab sample is a snapshot of one drain on one day. Months with few samples jump around.
- City and month only. The public record gives each sample's city and month, not its drain, so each city is one point at the centre of its districts.
- Genes in wastewater are not infections. They say what is circulating in the city's microbes, not who is ill.
- Two years is about two monsoons per city: anything seen here is a pattern to test, not a finding.