Repository navigation
Pdex 0.3.0 #81
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Pdex 0.3.0 #81
Changes from all commits
Commits
Show all changes
15 commits
Select commit
Hold shift + click to select a range
4cc54a4
fix: better handling of sched_getaffinity with conditional availability
noamteyssier 9ad0e85
refactor: improve path for one-v-rest
noamteyssier aecc697
tests: testing one-v-rest with multiple groups and edge-cases
noamteyssier e67d08e
dep: update numba-mwu
noamteyssier 02f1413
doc: update claude
noamteyssier 8c82028
fix: potential floating point noise and regression test
noamteyssier 25726f5
Merge pull request #78 from ArcInstitute/refactor/improve-one-v-rest-…
noamteyssier afe08eb
fix: only run ci once on PR
noamteyssier 38cec6e
ci: only trigger semver-check when PR to main
noamteyssier e6a1aba
Merge pull request #79 from ArcInstitute/ci/fix-unnecessary-ci-runtimes
noamteyssier 64386ff
refactor: completely deprecated bare fold_change column
noamteyssier fd528d3
Merge pull request #80 from ArcInstitute/chore/remove-deprecated-colu…
noamteyssier b09fbf8
chore(semver): bump
noamteyssier 585c5e3
docs: remove deprecated fold_change from docs
noamteyssier 5e37804
docs: added changelog
noamteyssier File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,48 @@ | ||
| # Changelog | ||
|
|
||
| All notable changes to this project are documented in this file. | ||
|
|
||
| ## [0.3.0] | ||
|
|
||
| ### Removed | ||
|
|
||
| - **Breaking:** the deprecated `fold_change` output column has been removed. It was an | ||
| alias for `log2_fold_change` (identical values); use `log2_fold_change` directly. The | ||
| `FutureWarning` previously emitted on every `pdex(...)` call is also gone. | ||
|
|
||
| ### Changed | ||
|
|
||
| - `"all"` mode (1-vs-rest) is now a genuine one-shot computation instead of a per-group | ||
| loop: the expression matrix is materialized once, each gene is ranked once via | ||
| `mwu_one_vs_rest()`, and each group's "rest" pseudobulk/CPM is derived algebraically | ||
| from the global sum rather than by re-slicing and re-ranking a fresh "rest" matrix. | ||
| This turns `_pdex_all` from `O(n_groups × n_obs)` into ~`O(n_obs)`, which matters most | ||
| for screens with many groups (e.g. guides) and/or large cell counts. | ||
| - Bumped the `numba-mwu` dependency floor to `>=0.2.0` (required by the `"all"`-mode | ||
| optimization above). | ||
|
|
||
| ### Fixed | ||
|
|
||
| - Guarded against floating-point cancellation noise in the algebraic "rest" pseudobulk | ||
| and CPM derivation (`_pdex_all`): the rest mean of non-negative data can never be | ||
| legitimately negative, so it is now clipped to `>= 0` before feeding | ||
| `log2_fold_change`/`percent_change`, preventing spurious negative values from | ||
| floating-point noise. | ||
| - `_available_cpus()` now checks `hasattr(os, "sched_getaffinity")` before calling it, | ||
| instead of relying on `AttributeError` from the call itself, fixing a case where the | ||
| attribute exists but raises for an unrelated reason on some platforms. | ||
|
|
||
| ### Tests | ||
|
|
||
| - Added regression coverage for `"all"` mode with multiple groups and edge cases | ||
| (`tests/test_math.py`, `tests/test_pdex.py`, `tests/conftest.py`). | ||
|
|
||
| ### CI | ||
|
|
||
| - `semver-check` now only runs on pull requests targeting `main` (previously it could | ||
| run — and fail spuriously — on unrelated PR bases). | ||
| - CI workflows now avoid redundant duplicate runs on a single PR push. | ||
|
|
||
| ## [0.2.5] - previous release | ||
|
|
||
| See git history prior to this file's introduction for earlier changes. |
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.