diff options
Diffstat (limited to 'gnu/packages/python-science.scm')
-rw-r--r-- | gnu/packages/python-science.scm | 498 |
1 files changed, 249 insertions, 249 deletions
diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm index 0ab8a6ad8a..98dede7b2a 100644 --- a/gnu/packages/python-science.scm +++ b/gnu/packages/python-science.scm @@ -246,6 +246,23 @@ possibility to differentiate functions that contain matrix functions as +,-,*,/, dot, solve, qr, eigh, cholesky.") (license license:bsd-3))) +(define-public python-aplus + (package + (name "python-aplus") + (version "0.11.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "aplus" version)) + (sha256 + (base32 "1rznc26nlp641rn8gpdngfp79a3fji38yavqakxi35mx2da04msg")))) + (build-system python-build-system) + (home-page "https://github.com/xogeny/aplus") + (synopsis "Promises/A+ for Python") + (description "This package is an implementation of the Promises/A+ +specification and test suite in Python.") + (license license:expat))) + (define-public python-apted ;; PyPI release lacks tests and there is no Git tag. (let ((commit "828b3e3f4c053f7d35f0b55b0d5597e8041719ac") @@ -280,6 +297,33 @@ possibility to differentiate functions that contain matrix functions as supersedes the RTED algorithm for computing the tree edit distance.") (license license:expat)))) +(define-public python-boost-histogram + (package + (name "python-boost-histogram") + (version "1.5.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "boost_histogram" version)) + (sha256 + (base32 "0p2f90p5jwlwrjz3hq2fzaifkmny33g2mpi89nnhi3w41f1jxr2i")))) + (build-system pyproject-build-system) + ;; This package bundles files from Boost::Histogram and doesn't provide + ;; a way to use a system library. + (propagated-inputs (list python-numpy)) + (native-inputs (list cmake-minimal + pybind11 + python-pytest + python-pytest-benchmark + python-scikit-build-core + python-setuptools-scm)) + (home-page "https://boost-histogram.readthedocs.io/en/latest/") + (synopsis "Python bindings for the Boost::Histogram library") + (description + "This package provides Python bindings for the Boost::Histogram library, +one of the fastest libraries for histogramming.") + (license license:bsd-3))) + (define-public python-cmocean (package (name "python-cmocean") @@ -307,6 +351,63 @@ variables. Most of the colormaps started from @code{matplotlib} colormaps, but have now been adjusted using the viscm tool to be perceptually uniform.") (license license:expat))) +(define-public python-corner + (package + (name "python-corner") + (version "2.2.2") + (source + (origin + (method git-fetch) ;no tests in PyPi archive + (uri (git-reference + (url "https://github.com/dfm/corner.py") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1i4dk4jxh0saysya2cnsfwlxwpldbdl174i9pwi4qj82av9jr2ii")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list + ;; XXX: Disable tests which failed with mismatched images, check why. + "-k" (string-append "not test_labels[png]" + " and not test_title_quantiles[png]" + " and not test_title_quantiles_default[png]" + " and not test_title_quantiles_raises[png]" + " and not test_bins[png]" + " and not test_bins_log[png]" + " and not test_titles1[png]" + " and not test_titles2[png]" + " and not test_pandas[png]" + " and not test_tight[png]" + " and not test_extended_overplotting[png]" + " and not test_reverse_overplotting[png]" + " and not test_arviz[png]" + " and not test_range_fig_arg[png]")) + #:phases + #~(modify-phases %standard-phases + (add-before 'build 'pretend-version + ;; XXX: Make sure you're either building from a fully intact git + ;; repository or PyPI tarballs. Most other sources (such as GitHub's + ;; tarballs, a git checkout without the .git folder) don't contain + ;; the necessary metadata and will not work. + (lambda _ + (setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version)))))) + (propagated-inputs + (list python-matplotlib)) + (native-inputs + (list python-arviz python-pytest python-scipy python-setuptools-scm)) + (home-page "http://corner.readthedocs.io/") + (synopsis "Make some beautiful corner plots") + (description + "This Python module uses @code{matplotlib} to visualize multidimensional +samples using a scatterplot matrix. In these visualizations, each one- and +two-dimensional projection of the sample is plotted to reveal covariances. +corner was originally conceived to display the results of Markov Chain Monte +Carlo simulations and the defaults are chosen with this application in mind but +it can be used for displaying many qualitatively different samples.") + (license license:bsd-2))) + (define-public python-cvxpy (package (name "python-cvxpy") @@ -336,6 +437,41 @@ but have now been adjusted using the viscm tool to be perceptually uniform.") optimization problems in Python.") (license license:asl2.0))) +(define-public python-decaylanguage + (package + (name "python-decaylanguage") + (version "0.18.6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "decaylanguage" version)) + (sha256 + (base32 "0kc9i9k51kg2zv8dwywpigiipxzmyxpzb101imjsvv1licip7b8v")))) + (build-system pyproject-build-system) + (arguments + (list + ;; This file fails to be collected with "DeprecationWarning: setDaemon() + ;; is deprecated, set the daemon attribute instead". + #:test-flags #~(list "--ignore" "tests/test_convert.py"))) + (propagated-inputs (list python-attrs + python-graphviz + python-hepunits + python-lark + python-numpy + python-pandas + python-particle + python-plumbum)) + (native-inputs (list python-hatch-vcs + python-hatchling + python-pytest)) + (home-page "https://decaylanguage.readthedocs.io/en/latest/") + (synopsis "Language to describe, manipulate and convert particle decays") + (description "DecayLanguage implements a language to describe and convert +particle decays between digital representations, effectively making it +possible to interoperate several fitting programs. Particular interest is +given to programs dedicated to amplitude analyses.") + (license license:bsd-3))) + (define-public python-ecos (package (name "python-ecos") @@ -360,6 +496,44 @@ optimization problems in Python.") numerical software for solving convex second-order cone programs (SOCPs).") (license license:gpl3))) +(define-public python-fast-histogram + (package + (name "python-fast-histogram") + (version "0.14") + (source + (origin + (method url-fetch) + (uri (pypi-uri "fast_histogram" version)) + (sha256 + (base32 "1sk9xa85cgm4sylzblwv3qr2dmm0ic06zkwxqa2xlazjiawp629r")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'build-extensions + (lambda _ + (invoke "python" "setup.py" "build_ext" "--inplace")))))) + (native-inputs + (list python-hypothesis + python-pytest + python-setuptools + python-setuptools-scm + python-wheel)) + (propagated-inputs + (list python-numpy)) + (home-page "https://github.com/astrofrog/fast-histogram") + (synopsis "Fast simple 1D and 2D histograms") + (description + "The fast-histogram mini-package aims to provide simple and fast +histogram functions for regular bins that don't compromise on performance. It +doesn't do anything complicated - it just implements a simple histogram +algorithm in C and keeps it simple. The aim is to have functions that are +fast but also robust and reliable. The result is a 1D histogram function here +that is 7-15x faster than @code{numpy.histogram}, and a 2D histogram function +that is 20-25x faster than @code{numpy.histogram2d}.") + (license license:bsd-3))) + (define-public python-formulaic (package (name "python-formulaic") @@ -386,6 +560,25 @@ numerical software for solving convex second-order cone programs (SOCPs).") formulas for Python.") (license license:expat))) +(define-public python-hepunits + (package + (name "python-hepunits") + (version "2.3.5") + (source + (origin + (method url-fetch) + (uri (pypi-uri "hepunits" version)) + (sha256 + (base32 "1n1nf2rz2d86qzjmcwykbc16jzsqb45vs8lyksg98b3jd8nwsd4l")))) + (build-system pyproject-build-system) + (native-inputs (list python-hatch-vcs python-hatchling python-pytest)) + (home-page "https://github.com/scikit-hep/hepunits") + (synopsis "Units and constants in the HEP system of units") + (description "@code{hepunits} collects the most commonly used units and +constants in the HEP System of Units, as derived from the basic units +originally defined by the CLHEP project.") + (license license:bsd-3))) + (define-public python-imagehash (package (name "python-imagehash") @@ -432,6 +625,39 @@ Features: @end itemize") (license license:bsd-2))) +(define-public python-mpl-scatter-density + (package + (name "python-mpl-scatter-density") + (version "0.8") + (source + (origin + (method url-fetch) + (uri (pypi-uri "mpl_scatter_density" version)) + (sha256 + (base32 "0cynk1rk6k2xklgv69difphrz6id77x3xb58kbs4mc4q7z6bvfid")))) + (build-system pyproject-build-system) + (arguments + (list + ;; See <https://github.com/astrofrog/mpl-scatter-density/issues/42>. + #:test-flags #~(list "-k" "not test_default_dpi"))) + (native-inputs + (list python-pytest + python-pytest-cov + python-pytest-mpl + python-setuptools + python-setuptools-scm + python-wheel)) + (propagated-inputs + (list python-fast-histogram + python-matplotlib + python-numpy)) + (home-page "https://github.com/astrofrog/mpl-scatter-density") + (synopsis "Matplotlib helpers to make density scatter plots") + (description + "This package provides functionality to make it easy to make scatter +density maps, both for interactive and non-interactive use.") + (license license:bsd-2))) + (define-public python-numdifftools (package (name "python-numdifftools") @@ -490,6 +716,29 @@ allowing the user to specify whether complex-step, central, forward or backward differences are used.") (license license:bsd-3))) +(define-public python-numpy-groupies + (package + (name "python-numpy-groupies") + (version "0.9.14") + (source + (origin + (method url-fetch) + (uri (pypi-uri "numpy_groupies" version)) + (sha256 + (base32 "000qz0z78rs3l6y0dd2vzvd2lx3mczm2762whwsdnhz6c35axdq1")))) + (build-system python-build-system) + (native-inputs + (list python-pytest + python-pytest-runner + python-numba + python-numpy)) + (home-page "https://github.com/ml31415/numpy-groupies") + (synopsis "Tools for group-indexing operations: aggregated sum and more") + (description + "This package provides optimized tools for group-indexing operations: +aggregated sum and more.") + (license license:bsd-3))) + (define-public python-osqp (package (name "python-osqp") @@ -1032,33 +1281,6 @@ logic, also known as grey logic.") and scientific computing.") (license license:bsd-3))) -(define-public python-boost-histogram - (package - (name "python-boost-histogram") - (version "1.5.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "boost_histogram" version)) - (sha256 - (base32 "0p2f90p5jwlwrjz3hq2fzaifkmny33g2mpi89nnhi3w41f1jxr2i")))) - (build-system pyproject-build-system) - ;; This package bundles files from Boost::Histogram and doesn't provide - ;; a way to use a system library. - (propagated-inputs (list python-numpy)) - (native-inputs (list cmake-minimal - pybind11 - python-pytest - python-pytest-benchmark - python-scikit-build-core - python-setuptools-scm)) - (home-page "https://boost-histogram.readthedocs.io/en/latest/") - (synopsis "Python bindings for the Boost::Histogram library") - (description - "This package provides Python bindings for the Boost::Histogram library, -one of the fastest libraries for histogramming.") - (license license:bsd-3))) - (define-public python-scikit-opt (package (name "python-scikit-opt") @@ -1506,25 +1728,6 @@ reference testing, constraint discovery for data, automatic inference of regular expressions from text data and automatic test generation.") (license license:expat))) ; MIT License -(define-public python-hepunits - (package - (name "python-hepunits") - (version "2.3.5") - (source - (origin - (method url-fetch) - (uri (pypi-uri "hepunits" version)) - (sha256 - (base32 "1n1nf2rz2d86qzjmcwykbc16jzsqb45vs8lyksg98b3jd8nwsd4l")))) - (build-system pyproject-build-system) - (native-inputs (list python-hatch-vcs python-hatchling python-pytest)) - (home-page "https://github.com/scikit-hep/hepunits") - (synopsis "Units and constants in the HEP system of units") - (description "@code{hepunits} collects the most commonly used units and -constants in the HEP System of Units, as derived from the basic units -originally defined by the CLHEP project.") - (license license:bsd-3))) - (define-public python-particle (package (name "python-particle") @@ -1553,41 +1756,6 @@ originally defined by the CLHEP project.") particle information and extra goodies.") (license license:bsd-3))) -(define-public python-decaylanguage - (package - (name "python-decaylanguage") - (version "0.18.6") - (source - (origin - (method url-fetch) - (uri (pypi-uri "decaylanguage" version)) - (sha256 - (base32 "0kc9i9k51kg2zv8dwywpigiipxzmyxpzb101imjsvv1licip7b8v")))) - (build-system pyproject-build-system) - (arguments - (list - ;; This file fails to be collected with "DeprecationWarning: setDaemon() - ;; is deprecated, set the daemon attribute instead". - #:test-flags #~(list "--ignore" "tests/test_convert.py"))) - (propagated-inputs (list python-attrs - python-graphviz - python-hepunits - python-lark - python-numpy - python-pandas - python-particle - python-plumbum)) - (native-inputs (list python-hatch-vcs - python-hatchling - python-pytest)) - (home-page "https://decaylanguage.readthedocs.io/en/latest/") - (synopsis "Language to describe, manipulate and convert particle decays") - (description "DecayLanguage implements a language to describe and convert -particle decays between digital representations, effectively making it -possible to interoperate several fitting programs. Particular interest is -given to programs dedicated to amplitude analyses.") - (license license:bsd-3))) - (define-public python-vector (package (name "python-vector") @@ -1729,39 +1897,6 @@ volume computations for simple domains like regular polygons, disks, spheres, cubes, etc.") (license license:gpl3+))) -(define-public python-mpl-scatter-density - (package - (name "python-mpl-scatter-density") - (version "0.8") - (source - (origin - (method url-fetch) - (uri (pypi-uri "mpl_scatter_density" version)) - (sha256 - (base32 "0cynk1rk6k2xklgv69difphrz6id77x3xb58kbs4mc4q7z6bvfid")))) - (build-system pyproject-build-system) - (arguments - (list - ;; See <https://github.com/astrofrog/mpl-scatter-density/issues/42>. - #:test-flags #~(list "-k" "not test_default_dpi"))) - (native-inputs - (list python-pytest - python-pytest-cov - python-pytest-mpl - python-setuptools - python-setuptools-scm - python-wheel)) - (propagated-inputs - (list python-fast-histogram - python-matplotlib - python-numpy)) - (home-page "https://github.com/astrofrog/mpl-scatter-density") - (synopsis "Matplotlib helpers to make density scatter plots") - (description - "This package provides functionality to make it easy to make scatter -density maps, both for interactive and non-interactive use.") - (license license:bsd-2))) - (define-public python-mpsplines ;; No release on PyPI no git tag, use the latest commit. (let ((commit "4967655fca8f4d0fc0685486c8ec2f1fe2f199d2") @@ -2714,44 +2849,6 @@ region of practical equivalence (rope), or that the second classifier has higher scores.") (license license:expat))) -(define-public python-fast-histogram - (package - (name "python-fast-histogram") - (version "0.14") - (source - (origin - (method url-fetch) - (uri (pypi-uri "fast_histogram" version)) - (sha256 - (base32 "1sk9xa85cgm4sylzblwv3qr2dmm0ic06zkwxqa2xlazjiawp629r")))) - (build-system pyproject-build-system) - (arguments - (list - #:phases - #~(modify-phases %standard-phases - (add-before 'check 'build-extensions - (lambda _ - (invoke "python" "setup.py" "build_ext" "--inplace")))))) - (native-inputs - (list python-hypothesis - python-pytest - python-setuptools - python-setuptools-scm - python-wheel)) - (propagated-inputs - (list python-numpy)) - (home-page "https://github.com/astrofrog/fast-histogram") - (synopsis "Fast simple 1D and 2D histograms") - (description - "The fast-histogram mini-package aims to provide simple and fast -histogram functions for regular bins that don't compromise on performance. It -doesn't do anything complicated - it just implements a simple histogram -algorithm in C and keeps it simple. The aim is to have functions that are -fast but also robust and reliable. The result is a 1D histogram function here -that is 7-15x faster than @code{numpy.histogram}, and a 2D histogram function -that is 20-25x faster than @code{numpy.histogram2d}.") - (license license:bsd-3))) - (define-public python-fastcluster (package (name "python-fastcluster") @@ -3782,29 +3879,6 @@ libraries, Modin provides seamless integration and compatibility with existing pandas code.") (license license:asl2.0))) -(define-public python-numpy-groupies - (package - (name "python-numpy-groupies") - (version "0.9.14") - (source - (origin - (method url-fetch) - (uri (pypi-uri "numpy_groupies" version)) - (sha256 - (base32 "000qz0z78rs3l6y0dd2vzvd2lx3mczm2762whwsdnhz6c35axdq1")))) - (build-system python-build-system) - (native-inputs - (list python-pytest - python-pytest-runner - python-numba - python-numpy)) - (home-page "https://github.com/ml31415/numpy-groupies") - (synopsis "Tools for group-indexing operations: aggregated sum and more") - (description - "This package provides optimized tools for group-indexing operations: -aggregated sum and more.") - (license license:bsd-3))) - (define-public python-plotnine (package (name "python-plotnine") @@ -4142,23 +4216,6 @@ out of the scope of the main traitlets project but are a common requirement to build applications with traitlets in combination with the scipy stack.") (license license:bsd-3))) -(define-public python-aplus - (package - (name "python-aplus") - (version "0.11.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "aplus" version)) - (sha256 - (base32 "1rznc26nlp641rn8gpdngfp79a3fji38yavqakxi35mx2da04msg")))) - (build-system python-build-system) - (home-page "https://github.com/xogeny/aplus") - (synopsis "Promises/A+ for Python") - (description "This package is an implementation of the Promises/A+ -specification and test suite in Python.") - (license license:expat))) - (define-public python-clarabel (package (name "python-clarabel") @@ -4236,63 +4293,6 @@ heavily biased to machine learning scenarios. It works on top of @command{numpy} and (partially) @command{gnumpy}.") (license license:bsd-3))) -(define-public python-corner - (package - (name "python-corner") - (version "2.2.2") - (source - (origin - (method git-fetch) ;no tests in PyPi archive - (uri (git-reference - (url "https://github.com/dfm/corner.py") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "1i4dk4jxh0saysya2cnsfwlxwpldbdl174i9pwi4qj82av9jr2ii")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags - #~(list - ;; XXX: Disable tests which failed with mismatched images, check why. - "-k" (string-append "not test_labels[png]" - " and not test_title_quantiles[png]" - " and not test_title_quantiles_default[png]" - " and not test_title_quantiles_raises[png]" - " and not test_bins[png]" - " and not test_bins_log[png]" - " and not test_titles1[png]" - " and not test_titles2[png]" - " and not test_pandas[png]" - " and not test_tight[png]" - " and not test_extended_overplotting[png]" - " and not test_reverse_overplotting[png]" - " and not test_arviz[png]" - " and not test_range_fig_arg[png]")) - #:phases - #~(modify-phases %standard-phases - (add-before 'build 'pretend-version - ;; XXX: Make sure you're either building from a fully intact git - ;; repository or PyPI tarballs. Most other sources (such as GitHub's - ;; tarballs, a git checkout without the .git folder) don't contain - ;; the necessary metadata and will not work. - (lambda _ - (setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version)))))) - (propagated-inputs - (list python-matplotlib)) - (native-inputs - (list python-arviz python-pytest python-scipy python-setuptools-scm)) - (home-page "http://corner.readthedocs.io/") - (synopsis "Make some beautiful corner plots") - (description - "This Python module uses @code{matplotlib} to visualize multidimensional -samples using a scatterplot matrix. In these visualizations, each one- and -two-dimensional projection of the sample is plotted to reveal covariances. -corner was originally conceived to display the results of Markov Chain Monte -Carlo simulations and the defaults are chosen with this application in mind but -it can be used for displaying many qualitatively different samples.") - (license license:bsd-2))) - (define-public python-paramz (package (name "python-paramz") |