Refactoring 2026 - #188
Open
sjanssen2 wants to merge 16 commits into
Open
Conversation
not need to provide "formula" but metadata columns are iteratively tested and combined in a way to explain most of variability. Furthermore, one function tests all alpha- and beta- div metrics, instead of just one
"trajectory" functions
…lepath deprecate other sepp_ versions harmonize use of "verbose" parameter for _executor blastn: make word_size a cached parameter extract functions for executing stuff into execute.py
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.
This PR is a larger and partially braking braking change!
str()function to then compute a hash of this representation. For larger DataFrames, ellipsis were returned bystr(), such that only the first and last 10 rows / cols were actually included in the string. Changes in the larger rest of data did not effect the hash, i.e. collisions were potentially very HIGH / likely. I've changes that, which means for you, that ggmap most likely will not find existing cached results in your analysis working directory and you need to re-compute (or rename the cached files accordingly). No results were wrong at any time!execute.py: I decided to re-structure my spaghetti code a bit, i.e. move all functionality necessary to run external programs to the new file "execute.py"analyses.py:verboseis handled as an argument.sepp(which I think nobody used for long time) are now moved todeprecated.pyblastn_localcan now handle LARGE result hitlists by applying filters "early", i.e. while parsing individual chunkscorrelations.py: annoyed by manually constructing / testing "formulas" for the linear model for forward step redundancy analyses for effect size computation and the fact that I had to call alpha- and beta- versions manually, I put everything in one functionredundancyand implemented an "auto" mode which first iterates ALL metadata columns (except those defined inomit) and computes individual effects and than heuristically composes a model that explains most of variability. Note: a smart manual "design" might still out compete this automatic mechanism and you might want to iteratively add columns toomitif you know about confounders!snippets.py: I've added three more functions to visualize alpha- / beta- and ancom results of testing for differences for a metadata columnhue(e.g. healthy/diseased) across multiple timepointstime(e.g. days after intervention) in an optionally "stratified" (e.g. body site) fashion.