Skip to content

v3.18.0 — the coverage level is in the vector now

Choose a tag to compare

@mikessh mikessh released this 26 Sep 18:13
· 234 commits to master since this release

DEFAULT_CSTAR = 0.20 is one number stretched over seven loci that attain very different coverage, and a vsig:div block computed at it is fully populated and entirely plausible. Nothing said it was a guess.

Added: vsig:qc:-:cstar_fallback_frac — the share of a sample's present loci whose coverage level came from the flat fallback rather than from a measurement. Same channel and shape as the V/J fallback fractions one block over.

Measured on 40 synthetic TRB samples of 400–4,000 clonotypes, median absolute shift against the bulk-RNA-seq measured level (C* = 0.1072), in log10 Hill units:

coverage level 1D_c 0D_c 2D_c clonality
flat fallback C* = 0.20 0.2684 0.2765 0.2575 0.4575
amplicon C* = 0.4080 0.5755 0.6030 0.5432 1.0329

0.2684 in log10 is a factor of 1.86 on the Shannon diversity. 40/40 samples estimable in both, so none of it shows up as a hole.

Changed: cstar takes None and takes a partial dict. A locus the dict does not cover establishes no level — vsig:div:* are holes, mask:*:estimable is 0, one warning names the loci. That path used to raise KeyError, so the shipped amplicon reference (TRA and TRB only) died on the first B-cell locus. vdjtools signature --cstar none reaches the same path.

Tier widths move by one: core 153, standard 689, full 1404; the vsig half 161. Only the nuisance preset gains the column (74) — classify, transfer, compact, bcell, geometry and statistics are unchanged.

Full notes in CHANGELOG.md.