Repository navigation
Reads: A. fumigatus population MAT report (4,849 isolates), MAT frequency, ENA FTP fallback - #326
Merged
Merged
Conversation
On 2026-11-09 ENA answered HTTPS with 403 for 17 ENA-only A. fumigatus runs from the HPCC (after earlier retries) while FTP served the same files. When the HTTPS stream delivers nothing, sketch_one.sh now retries the same paths over ftp://. Recovered 15 of the 17; 2 remain ena_partial. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ency.py) Reads the store's MAT calls, distance QC (mean ANI, clone groups), k-mer QC and the curator exclusion list (STORE/exclude.tsv). Call per sample: reads-type when single, else the sketch call. Leaves out curator exclusions, other species (mean ANI < 0.95) and QC mixtures, with the reason in samples.tsv. Reports the MAT1-1 fraction with Wilson 95% CI and an exact binomial test against 0.5, per sample and clone-corrected (one vote per clone group at ANI 0.9995), overall and by source, study, country and lineage (ANI 0.998 groups). First run (A. fumigatus, 4,721 samples kept of 4,834): MAT1-1 0.513 per sample, 0.503 (0.482-0.525) over 2,153 clone groups. Fixture test covers call choice, exclusions, clone correction and the statistics. README documents the script, exclude.tsv and the FTP fallback. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- export_report.py (run on the HPCC): population.json + runs_public.tsv of a sketch store: per-isolate and clone-corrected MAT1-1 fraction, by country, study, source and lineage, sketch vs reads-type concordance, outlier kinds and isolates of another species, PCoA points, target screens. Local isolates are counted but never named (curator decision 2026-11-09). - reports/aspergillus_fumigatus/: 4,849 isolates; MAT1-1 50.4% per clone (95% CI 48.2-52.5%, 2,077 clones), 51.2% per isolate. - build_reads_site.py copies each report and lists it in index.json; new page reads/population.html; the overview and the species report link to it. - Checked in a headless browser: 0 console errors, 0 failed requests, no local names, no horizontal scroll at phone width. Full suite 1955 passed, 18 skipped. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Member
Author
|
Correction to this PR's description (2026-11-10): the 50 runs of PRJNA1186192 (44) and PRJNA1381729 (6) are not another species. Their k-mers match Af293 at ANI 0.991-1.000; they hold a few hundred reads each (likely targeted sequencing filed as WGS), so they are unlike every other sample for lack of data. The isolates of another species are 6 public runs (A. oryzae/flavus-type, A. nidulans, A. fischeri, A. lentulus, 2 unresolved) plus local ones (Moose_3-1.1 is A. nidulans). The MAT frequency does not change (same isolates left out). The page and the exclusion reasons are corrected on branch afum-study-titles; catalog fix proposed in stajichlab/PopSeq#37. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
A population report of A. fumigatus mating type from the sketch store (every public isolate plus the lab collection), shown on a new page of the reads site, plus the two pieces it needs.
Headline: MAT1-1 50.4% per clone (95% CI 48.2–52.5%, 2,077 clones; exact binomial p = 0.76), 51.2% per isolate, across 4,849 isolates (4,736 kept). No country or study departs from 50% at p < 0.01 after clone correction; three near-clonal lineages are skewed (clonal expansion, not a species-wide shift). Sketch and reads-type calls agree 4,614 times and disagree 0 times where both give one idiomorph.
Commits
sketch_one.sh): ENA answered HTTPS with 403 for 17 ENA-only runs from the HPCC while FTP served them; the fallback recovered 15 (2 remainena_partial).mat_frequency.py: MAT1-1 fraction per isolate and per clone group (ANI 0.9995), by source, study, country and lineage (ANI 0.998), with Wilson 95% CI and an exact binomial test. Leaves out curator exclusions (STORE/exclude.tsv), other species (mean ANI < 0.95) and QC mixtures, with reasons.export_report.py(run on the HPCC) writesdatasets/reads/sketch_store/reports/aspergillus_fumigatus/(population.json 145 KB, runs_public.tsv 438 KB, committed);build_reads_site.pycopies it; newweb/intro/reads/population.html; the reads overview and the A. fumigatus species report link to it.Data decisions (curator, 2026-11-09)
Findings worth a look
study_titles.tsvpredates those two BioProjects, so they show no title until it is rebuilt from PopSeq.Test plan
pixi run -e test python -m pytest tests -q)test_sketch_store_mat_frequency.py,test_sketch_store_export_report.py(local names never leak),test_build_reads_site_script.py(report copied and indexed; none -> empty list)http.server): 0 console errors, 0 failed requests, all sections filled (17 country groups, 36 studies, 20 lineages, 4,569 PCoA points, 21 screens), no local names, no horizontal scroll at 390 px; overview table and species-page link render🤖 Generated with Claude Code