Skip to content

mirpy-lib 3.13.0

Choose a tag to compare

@mikessh mikessh released this 23 Sep 22:19
· 110 commits to master since this release

Three named scale models, one rotation

load_scale() and mir signature --scale now take a model name rather than only a path:

model your data loci state
deep-tcr targeted / amplicon TCR TRA, TRB ships today; the default
blood bulk blood RNA-seq all 7 artifact not in the wheel yet
tissue bulk tissue RNA-seq all 7 artifact not in the wheel yet

The rotation is one artifact for all three -- it is fit-free, so no assay and no sample enters it, and a coordinate already in your hands does not move when a model is added. What differs is the per-column scale and the per-locus coverage constant cstar, which are assay-specific: TRB sits at 0.408 in the amplicon reference and 0.1256 in the blood per-study fit, a 3.2x difference in the coverage level every Hill number is compared at.

A named model whose artifact is not installed raises FileNotFoundError; an unknown name raises ValueError rather than being read as a path. Neither falls back to the bundled reference.

Findable docs, and the end-to-end recipe

The signature page was written, committed and live, and nobody could find it: the sidebar was a flat wall of page titles in source order. index.rst now carries captioned toctrees, so Repertoire signatures is its own section on every page.

docs/signature.rst answers the question people actually ask -- a directory of AIRR TSVs plus your metadata sheet, to one joinable table -- and examples/signature_pipeline.py is the runnable version on the 1,764-sample SRA cohort in isalgo/airr_benchmark.

mir signature --preset classify samples/*.tsv -o sig.tsv

Fixes

Three tests had been failing on master since 3.12.0: they asserted the behaviour of --no-filter-functional, which that release removed on purpose. Suite is 376 green.