Log1pTransform
log(1 + x) ↔ expm1(x).
Entries equal to NON_MEASURED_GENE (the missing-gene sentinel) are preserved verbatim rather than transformed, since log1p(-1) = -inf. The model is trained to receive the sentinel unchanged in its input space, so it must survive the transform.
process
log1p, preserving the missing-gene sentinel.
Entries equal to NON_MEASURED_GENE are left unchanged; all other entries are log1p-transformed.
Input counts array.
reverse
expm1 (inverse of log1p).
Entries equal to NON_MEASURED_GENE are preserved unchanged so the transform remains a true inverse of process.
Log1p-transformed array.
Expm1Transform
expm1(x) ↔ log1p(x).
Inverse of Log1pTransform. Useful as a standalone post-processor to convert log1p-space model output back to raw counts.
process
expm1.
Log-space array.
reverse
log1p (inverse of expm1).
Counts-space array.
TPMNormaliser
NON_MEASURED_GENE (the missing-gene sentinel) are excluded from the row total and preserved verbatim in the output, so a partially or fully unmeasured sample is not scaled by a meaningless negative sum and the sentinel survives for downstream transforms.
process
NON_MEASURED_GENE are excluded from the row sum and left unchanged in the output.
Raw counts array.
ZScoreNormaliser
(x - mean) / std Reverse: x * std + mean
process
Raw expression array.
reverse
Z-scored array.
SubsetColumns
process
Input array with columns to subset.
ValueError- If any index is out of range for the matrix’s last-axis size.

