Skip to content
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

Update pyspi dependencies for python 3.10+ compatibility #70

Merged
merged 36 commits into from
May 20, 2024

Conversation

joshuabmoore
Copy link
Collaborator

This PR brings pyspi to python 3.10+ users by bumping the relevant dependencies such that coverage across all python versions (3.8-3.12) is provided. Pyspi will now run on all platforms and all python versions except for MacOS Python 3.8.
Some of the key changes in order of files changed:

  • Expanded unit tests to cover all major python versions in the range 3.8-3.12.
  • Bumped pyspi version number to reflect minor version release 1.1.0
  • Added normalisation flag to the Calculator object, allowing users to specify whether they want to normalise the data before computing SPIs with the default value set to True. Prior to this, normalisation was carried out by default without explicitly warning the user of this operation.
  • Patched the anm_score function to reshape sklearn's GPRegressor prediction output. See this open PR for more information about the bug in cdt's implementation of additive noise model (ANM) when used in conjunction with scikit-learn >= 1.1.0 .
  • Relaxed the python version constraint from >= 3.9, <3.10 to >=3.8.
  • Updated the README to reflect the wider coverage (new version badges) and removed redundant information.
  • Added fixed seed to lmfit_SGDRegressor for reproducibility of outputs.
  • Added a function called inspect_calc_results to print a high level summary table of successful SPIs computed, SPIs returning NaNs and number of partial NaNs returned, addressing issue 6. This will run by defaulting after finishing SPI computations.
  • Lifted version constraints on most dependencies to allow pyspi to run on newer versions of python.

@joshuabmoore joshuabmoore merged commit 5c87883 into main May 20, 2024
5 checks passed
@joshuabmoore joshuabmoore deleted the jmoo2880-python-upgrade branch May 25, 2024 23:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant