Repository navigation
mirpy-lib 3.15.0
All six scale references ship, including tissue
--scale |
corpus | studies | scaled columns |
|---|---|---|---|
deep-tcr |
7 deep amplicon cohorts, 4,080 samples | — | 394 / 1,403 |
blood |
23,234 blood samples | 947 | 1,377 / 1,403 |
blood-unweighted |
same corpus, one vote per sample | 947 | 1,377 / 1,403 |
blood-v3 |
same corpus, pre-3.11 fit, kept for continuity | 947 | 1,377 / 1,403 |
tissue |
13,577 tissue samples | 1,024 | 1,360 / 1,403 |
tissue-unweighted |
same corpus, one vote per sample | 1,024 | 1,370 / 1,403 |
v3 was fitted under mirpy 3.9.0, which predates weight_by_group/min_n_groups entirely, so it is a per-sample fit whether or not anyone intended one. The v4 arms are the same corpora refitted with min_n_obs=1000, min_n_groups=20, and the weighting stated explicitly.
cstar did not move and neither did the rotation. The coverage constants are consumed at emission time and are already baked into the matrices these fits read, so v3 → v4 moves location and scale only.
Tissue is not blood, measured
Over the 1,359 columns the blood and tissue references both establish, the median scale ratio is 0.721 and the largest location difference is 17.2 robust deviations. A tissue sample read against the blood reference is not slightly off, it is in the wrong units, and the div columns are where it shows first.
vsig:kmer can finally be declared
kmer_spaces_v1.npz ships. Until it existed the block could not even be declared: layout.py fixes a block's width at declaration and the k-mer block's width is whatever rank was fitted. 7 loci at rank 32, from 423 surviving terms (TRG) to 38,962 (IGH).
from vdjtools.signature.kmer import register_kmer
from mir.signature import load_kmer_spaces
register_kmer(load_kmer_spaces()) # vsig:kmer, 33 columns x 7 lociRegistering is opt-in, and it appends. core (152) and standard (688) are untouched; full goes 1,403 → 1,634 with the first 1,403 columns keeping their meaning and their index. A vector computed before registering stays valid — asserted by a test, because it is the whole contract.
Note on size
The wheel is now 10 MB, up from 3 MB. The k-mer artifact is the entire increase, and it is stored float32 for that reason — float64 would have made it 14.2 MiB rather than 7.0 MiB, at a worst-case projection error of 4.9e-9 relative. Requires vdjtools >= 3.12.1, which is what makes these files loadable without pickle.