Data and scripts for the OUH MGIT study about the new protocol for TB MGIT PCR. paper: https://www.biorxiv.org/content/10.64898/2026.02.04.703726v1
conda env create -f env.yml
conda activate ouh_mgit_study
pip install -e .[dev]This includes installing the comparison scripts from: https://github.com/oxfordmmm/ont_illumina_comparison_scripts The TB masks used here were created in masquerade: https://github.com/oxfordmmm/masquerade
Samples are on ENA under project PRJEB106303. See metadata/samples.csv for accessions.
There are 6 controls: H1 (failed to PCR for ONT), H2, H3, BCG, X54 (Only in Illumina), X55 (Only in Illumina). So 6 for Illumina, 3 for ONT
In addition to H1, 10 samples are excluded:
- Q46 was a tissue sample with high human
- Q66, M16, M18, X14 were non-bacterial (P. aeruginosa, paenibacillus, Gordonia polyisoprenivorans, Rhodococcus)
- Q70, X5, X9, Z39, Z2 failed to PCR with ONT
The result is:
- 240 samples which can be compared
- 6 control samples (of which 3 ONT)
- 5 are non-myco
- 5 samples failed to PCR for ONT
The sequencer produces pod5 file every hour (_0 is after first hour, etc). As such can pretend we only ran sequencer for 1 or 6hrs.
This was done using the script subsample_by_time.py.
Note: In the 1hr and 6hr sets have only used the 240 comparable samples and 3 ONT controls (See Subsampling section).
Reads were processed using an instance of the GPAS cloud platform, with certain steps being performed in a vm to ensure consistent versioning. The steps to download the results and perform the offline processing are described in SAMPLE_PROCESSING.md. This requires access to the cloud platform instance and associated repos.
The comparisons on the resulting data is fully reproducible. The markdown file COMPARISON_STEPS.md walks through all the processing done to produce all the graphs and results in the paper.