Repository navigation
Measured zero concentrations and isozyme coverage of the proteomics - #30
Merged
Merged
Conversation
loadProtData reads an abundance of 0 as not measured unless zerosAsMeasured is set. getIsozymeCoverage reports the isozyme groups with a measured and an unmeasured entry, and zeroUnmeasuredIsozymes limits the usage of the unmeasured ones. flexibilizeEnzConcs warns about enzymes with a concentration of 0, which it cannot raise.
This was referenced Nov 3, 2026
Unit test results73 tests 73 ✅ 9s ⏱️ Results for commit be3c32b. |
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.
loadProtDatareads an abundance of 0 as not measured (NaN) before any filter, so a protein that draws from the protein pool is not capped at 0 by a placeholder zero. The optionzerosAsMeasuredkeeps a 0 as a measured replicate: it enters the mean, is exempt fromminValandcutLowest, and a protein with only zeros is returned as 0, whichconstrainEnzConcsturns into a usage bound of 0.fillEnzConcsandconstrainEnzConcsdocument the convention (NaN means no information, 0 means measured absent).getIsozymeCoveragereturns the reaction groups inec.rxns(entries that share an identifier once_EXP_<n>is removed) that have a measured and an unmeasured entry, and the enzymeszeroUnmeasuredIsozymescan act on.zeroUnmeasuredIsozymeslowers the usage bound of those enzymes to 0 (method'zero') or to a detection limit ('detectionLimit', default the smallest concentration above 0), afterconstrainEnzConcs. An enzyme that also catalyses a reaction without a measured sibling is left unchanged.ec.concsis not modified.flexibilizeEnzConcsraises a usage bound as a factor of the concentration, so an enzyme with a concentration of 0 is never raised; it warns about these enzymes (flexibilizeEnzConcs:measuredZero), and the per-complex path records the count on the first subunit with a concentration above 0 and leaves enzymes at 0 out offlexEnz.relaxProteomicsGreedysets a bound back to its default, including a bound of 0.levelComplexConcskeeps a subunit at 0 at 0.Closes #6 and #7.