Skip to main content

Yet another Python library with helpers and utilities for data analysis and processing.

Project description

Jupyter Analysis Tools (v1.7.4)

PyPI Package latest release Commits since latest release License Supported versions PyPI Wheel Weekly PyPI downloads Continuous Integration and Deployment Status Coverage report

Yet another Python library with helpers and utilities for data analysis and processing.

Installation

pip install jupyter-analysis-tools

You can also install the in-development version with:

pip install git+https://github.com/BAMresearch/jupyter-analysis-tools.git@main

Documentation

https://BAMresearch.github.io/jupyter-analysis-tools

Development

Testing

See which tests are available (arguments after -- get passed to pytest which runs the tests):

tox -e py -- --co

Run a specific test only:

tox -e py -- -k <test_name from listing before>

Run all tests with:

tox -e py

Package Version

Get the next version number and how the GIT history would be interpreted for that:

pip install python-semantic-release
semantic-release -v version --print

This prints its interpretation of the commits in detail. Make sure to supply the --print argument to not raise the version number which is done automatically by the release job of the GitHub Action Workflows.

Project template

Update the project configuration from the copier template and make sure the required packages are installed:

pip install copier jinja2-time
copier update --trust --skip-answered

CHANGELOG

v1.7.4 (2026-02-16)

Bug fixes

  • GitHub Workflows: prevent empty 'with:' (553e518)

  • Project Template: recent version applied (71f7367)

Testing

  • Windows: enable on GitHub Workflows again (be287a9)

v1.7.3 (2026-02-04)

Bug fixes

  • DataStore: do not attempt to create a token when logged in via token, not allowed (6beeddd)

v1.7.2 (2026-01-30)

Bug fixes

  • DataStore.init: allow token-based auth, docs added (d64f92f)

Code style

  • DataStore: whitespace errors (f599040)

v1.7.1 (2025-12-11)

Bug fixes

  • DataStore.createObject(: attempt to create new project/collection only if object was not found; save it finally as well (95fa9e0)

v1.7.0 (2025-12-11)

Code style

Enh

  • DataStore.init: remember token and forward how long it should be valid (385ecf8)

v1.6.3 (2025-12-04)

Bug fixes

  • GitHub Workflow: maintenance updates (59ea72b)

v1.6.2 (2025-09-22)

Bug fixes

  • Project: add pybis dependency, for datastore module (80350c7)

Code style

v1.6.1 (2025-09-19)

Bug fixes

  • DataStore: regression of handling of existing objects (28bd44c)

  • DataStore: proper forwarding of spacePrefix for filtering relevant spaces (c4117f3)

  • DataStore: use the URL provided by constructor (fcc46fb)

v1.6.0 (2025-09-19)

Bug fixes

  • DataStore: f-string syntax (9166382)

  • Tests: pybis module required for collecting in new datastore module (ea6a21d)

Features

  • DataStore: new module for managing objects in OpenBIS (cdf0a27)

v1.5.1 (2025-08-04)

Bug fixes

  • readSSFZ: split in two: ssfz2json for converting, ssfz_compare for diff-like compare (e8b24fe)

v1.5.0 (2025-08-04)

Bug fixes

  • readSSFZ: rename command readSSFZ -> ssfz2json for avoiding name collision with function in readdata module (dde1d10)

Features

  • readdata: jupyter_analysis_tools.readSSFZ cmdline tool to convert .SSFZ to .JSON and diff-compare .SSFZ files (their metadata) (46dc633)

Refactoring

v1.4.3 (2025-08-01)

Bug fixes

  • utils: makeNetworkdriveAbsolute() should return input path if no changes needed (2ec96d7)

v1.4.2 (2025-08-01)

Bug fixes

  • utils: makeNetworkdriveAbsolute() with FQDN resolution (f4591fb)

v1.4.1 (2025-08-01)

Bug fixes

  • utils: networkdriveMapping() for Linux, with tests (3f4deeb)

Testing

  • utils: remove debug output, should work now (1117c89)

v1.4.0 (2025-07-28)

Continuous integration

  • dependencies: removed unused requirements (592bfe1)

Documentation

  • readdata: function docstrings and clearer function arguments/variables (365effa)

  • Changelog&Readme: updated by template (ab2efa8)

  • readme: note on reapplying project template (a8d0176)

  • readme: .rst version not needed anymore (a59e9a8)

Features

  • plotting: plotPDH() plots a given .PDH file path with pandas with reasonable defaults for SAXS (d592638)

  • Utils: naturalKey() can be used as sort key for natural file sorting (a60f186)

  • feat: readSSFZ() convenience function (c3e882b)

v1.3.2 (2025-07-23)

Bug fixes

  • Project: let the template generate supported python versions (8acfa6d)

Continuous integration

  • coverage: revert config regression for coverage merging (dffe265)

Documentation

  • readme: additional fix for readme.md (795046f)

  • readme: in markdown format for combining with changelog (eb6b904)

  • readme: use markdown format to allow combining with changelog on PyPI (395b2c0)

v1.3.1 (2025-07-23)

Bug fixes

  • Project: update manifest and flake8 config, reapplied template (c98c648)

Code style

Continuous integration

  • semantic-release: replace .cookiecutterrc by .copier-answers.yml (2030c88)

  • coverage: coverage-report fix (1bd26b7)

  • GitHub Workflows: remove templates, rendered by copier update (8a637a5)

  • GitHub Workflow: publish depends on all other job to be successful (efc1f22)

  • Template: latest GitHub Workflow templates applied (7d87906)

  • coverage: fix path name matching rules (37bd2d9)

Documentation

  • Copyright years: update (cee35e6)

  • Contributions: Authors update (dd5a5c4)

Refactoring

  • Project: GitHub Workflow templates fixed (b346b28)

  • Project: GitHub Workflow templates updated (235c4d9)

  • Project: switching to copier for project template with update mechanism (0d3064b)

v1.3.0 (2025-07-16)

Bug fixes

  • utils.extract7z: informative info message (80d2f71)

Continuous integration

  • coverage: fix coverage artifact name for multiple matrix.os (f471599)

  • testing: test on Windows as well (4a83c39)

Features

  • utils.makeNetworkdriveAbsolute: new routines for translating a windows drive letter mount to its network location (823a6bf)

v1.2.2 (2025-07-15)

Bug fixes

  • readPDHmeta: use unique dict keys, the xmk key can occur in multiple groups in PDH (ef41c81)

Documentation

  • pyproject: revert specify readme+changelog document types (1baa762)

  • pyproject: specify readme+changelog document types to render overview on pypi correctly (6e4d1e5)

  • ghpages: make sure .nojekyll exists after purging old html docs (4847845)

v1.2.1 (2025-07-11)

Bug fixes

  • readme: trigger new version after style changes (8b2b5e9)

Code style

Continuous integration

  • workflow: publish only if the docs are good (a663ed3)

Testing

v1.2.0 (2025-07-11)

Features

  • readdata: readSSF() renamed from readSession(), tests added with expected JSON output (e2197f6)

  • readPDHmeta: routine for reading metadata part from .PDH and .SSF files (ea6a1d5)

Testing

  • readdata: path separator depends on platform (1b2866f)

  • readdata: testdata files and testing, using pathlib instead of old os.path (aeacfa4)

v1.1.0 (2025-07-10)

Bug fixes

  • packaging: add dependencies for project and testing (2729a45)

Documentation

  • utils: reformat doc strings (1cf9b9b)

Features

  • utils: addEnvScriptsToPATH() (a8c22e0)

  • notebook_utils: remove method for finding notebook file path currentNBpath() (13a5a60)

Refactoring

  • utils: appendToPATH() using pathlib, verifed test included (35f37fc)

Testing

  • readdata: test data for reading PDH and SSFZ (9b919d2)

v1.0.0 (2025-07-09)

Bug fixes

  • packaging: add required dependency packages to project config (43076e2)

v0.1.8 (2025-01-30)

Bug fixes

  • distrib: scipy.integrate.simps does not exist in recent scipy versions (b59edc1)

Continuous integration

  • changelog: format commit by using their scope only, not repeating the tag (6b72fe7)

  • semver: allow message tag enh for enhancements (0810b4f)

Documentation

  • Changelog: use semantic-release detected scope if available, unchange summary otherwise (ca803e7)

  • Changelog: omit empty versions without relevant changes (87b7f23)

  • index: show link to github project on left sidebar (3fad5a8)

  • Changelog: don't show chore changes on automated build config (CI) (10c7ee3)

  • Changelog: exclude commit message body from changelog rendering (e37e82c)

v0.1.7 (2024-03-26)

Bug fixes

  • distrib: Distribution.plotPeak() legend background more transparent (4a148f1)

Refactoring

  • notebook_utils: whitespace (30feb51)

v0.1.6 (2024-03-25)

Bug fixes

  • notebook_utils: notebookapp import path changed (27266db)

v0.1.6-dev.1 (2023-03-27)

Documentation

v0.1.5 (2023-03-27)

Bug fixes

  • reBin: module renamed to binning, fixes name clashes with docs gen (ec959fb)

Code style

  • format: fix whitespace and quotes with black (b0b7dba)

  • binning: fix quoting by using black formatter (61603f7)

Documentation

  • cleanup: removed obsolete module doc, replaced by autosummary generated files (c0d4256)

  • format: fix formatting with black (5de80d4)

v0.1.5-dev.1 (2023-03-27)

Code style

  • config: string normalization, double quotes (e8edbc4)

Documentation

  • General: config updated by cookiecutter (6c9ddfb)

v0.1.4 (2023-03-03)

Bug fixes

v0.1.3 (2023-03-03)

Bug fixes

  • tox: clean env (0135426)

  • Package: cookiecutterrc updated (7b29a17)

  • tox: cleanup env removed pckg build files (ecd8648)

  • GitHubAction: migrate to pathlib.Path in template rendering (d3ae5db)

Code style

  • pyproject.toml: use double quotes (8f902a2)

Documentation

  • readme: adjust version numbers in readme as well (5700694)

  • readme: using test.pypi.org links (240e58c)

  • Package: update project description (704a0b5)

  • comments: add some, remove obsolete (efe2689)

Refactoring

  • docs: config adjusted by cookiecutter (84e00f0)

  • metadata: update project meta data (9d6982c)

Testing

  • tox: find sys Python version when generating files if not specified explicitly (e690193)

v0.1.2 (2023-02-24)

Bug fixes

  • Documentation: doctest format in distrib (5942972)

Documentation

  • distrib: generate entries of submodule distrib (c8055c6)

v0.1.2-dev.1 (2023-02-24)

Documentation

  • utils: generate entries of submodule utils (762a548)

Unknown Scope

v0.1.1 (2023-02-24)

Bug fixes

  • docs: allow markdown format in changelog (593356b)

v0.1.1-dev.4 (2023-02-23)

Documentation

  • readme: updated links and badges (2e0329d)

v0.1.1-dev.1 (2023-02-23)

Bug fixes

  • tox: removed tox-wheel settings (cacbfe3)

Documentation

  • config: clean up version definition (c18c67f)

  • docs: removed disabled config (3059ff9)

  • docs: disabled incompatible sidebar config with furo theme (61959be)

Unknown Scope

  • added tox-wheel to ci required packages (7eae72c)

  • readme: updated badge for docs (6e78a50)

  • comments added (af59a8a)

  • readme: fixed link to coverage report page (1e173dc)

  • docs env needs toml module for reading values from pyproject.toml (6a2d755)

  • applying isort config (02c6bbc)

  • updated isort config (78e38e9)

  • docs config: using urls defined in pyproject.toml (33d5f23)

  • moving isort config to separate file, not picked up from pyproject in a pre-commit hook (bfaf1e0)

  • pre-commit uses pycqa repo for isort (4b4a31c)

  • updated pre-commit hook versions (4fdec5c)

  • docs switching theme to furo (ceab414)

  • moved project meta data from setup.py to pyproject.toml (a73f9a7)

  • removed obsolete dependency from github action template (0d071bc)

  • tox: removed coverage combine for single runner, useless (831fa6b)

  • tox: updated bootstrap template for github actions (47528b8)

  • tox: build env for package building (91969bb)

  • tox.docs: generating placeholder for github pages; (bcaaa54)

  • tox: coverage combine command added (bc45701)

  • readme: removed unused table def (9665ccf)

  • readme: coverage badge added (from report) (6570cf1)

  • tox config format fixes (210b5e3)

  • readme: download numbers from pypi (7082226)

  • readme: minor formatting edit (645e0f8)

  • readme: adjusted badges (343dc81)

  • fixed broken link (e41268d)

  • removed missing tbump.toml from manifest (1a54907)

  • Dependabot config (4578709)

v0.1.0 (2022-11-10)

Documentation

  • docs: let sphinx use numpy directly instead of mockup (9b6ec6d)

  • docs: sphinx extlinks syntax updated (0866ee7)

  • docs: URL updated (146039c)

  • docs: fix docs gh workflow spec (49d7e93)

  • docs: fix gh workflow spec (b977751)

  • docs: fix gh workflow spec (e23c22c)

  • docs: fix gh workflow spec (024295d)

  • docs: fix gh workflow spec (12adda9)

  • docs: fix gh workflow spec (f062d12)

  • docs: updated urls and gh workflow spec (66a0704)

Unknown Scope

  • tbump config updated (e17de91)

  • package classifiers and readme updated (4cafdca)

  • tox: removed passenv=*, more strictness (818ffa1)

  • moved tbump config into pyproject file (b8b9881)

  • isort excludes .ipynb_checkpoints (db90f62)

  • flake8 config updated (20a46bc)

  • reformatting according to pre-commit config (54fd524)

  • tox:check: let check-manifest ignore macOS meta files (d301bd2)

  • gh: removed obsolete testing.yml (1ce898d)

  • readme: updated badges (790bf44)

  • readme: updated badges (99ddde2)

  • readme: updated badges (f18418c)

  • readme: fixed badges, renamed testing -> tests (3efb28f)

  • removed pypy test environment from github actions (17f8515)

  • removed pypy test environment (e2cfa0a)

  • conda_environment.yml not needed anymore (b28806f)

  • tested testing config, enabled doctests (a273d9d)

  • generate github testing workflow with tox (f04bb7b)

  • tox:bootstrap: don't fail for macOS .DS_Store files (0445011)

  • tox setup added and works partially (4956d25)

  • moved implementation to src subfolder (a917c30)

  • updated gitignore (2499639)

  • readme: updated docs gh workflow badge (3bb0b40)

  • documentation setup (fa494d0)

  • editorconfig added (61299aa)

  • pre-commit config added, running reformatter, import sort and flake8 linter for the first time (0537b68)

  • let git ignore macOS meta data files (6e35aa3)

  • distrib: removed radius-specific scale factors when converting (LogNorm) distribution parameters (bf7bcca)

  • distrib.Distribution.xlabel added (30ad6c1)

  • indicate python raw string to protect LaTeX commands (4483cb5)

  • utils.setPackage() prepend local module search path (247973a)

  • distrib: handling logNorm params distrPar as dict now, doctests added (0aad717)

  • readdata: fixed imports, allow disabling info output by print_filename arg (aa1cf22)

  • readPDH replaced by a pandas.read_csv wrapper (9d3c6a4)

  • fixed init (55e9d20)

  • readPDH: detection of XML section updated (096521f)

  • updated GitHub Action (7844e90)

  • utils: moved jupyter notebook related helper to separate file/module (4bbee4e)

  • testing workflow runs doctest on utils module (6d19fd4)

  • utils.isList(): doctest added (f27855d)

  • testing workflow: fixed python versions (a71e60e)

  • defined new github action for running tests (3589299)

  • Distribution.uncertRatioMedian() added (8a2ef2d)

  • distrib.getLargestPeaks: fixed sort order of largest peaks (9cca28f)

  • show LogNorm params for each peak (64b60e7)

  • introduced distrib.Distribution for finding and plotting peaks (6beadf3)

  • analysis.getModZScore() calculates the modified z-score of some data arrays (2250a59)

  • distrib.findLocalMinima: skip peaks with less than 5 points (712d590)

  • distrib.findLocalMinima() fail gracefully on single peak ranges (45eb76b)

  • plotting.GenericResult with x-axis label (1a14688)

  • missing numpy import (8c01e86)

  • added plotting.GenericResult (96cf6c8)

  • distrib.normalizeDistrib: convert pandas.Series to numpy.ndarray first (a50f78e)

  • distrib.findLocalMinima() added (0ac94c7)

  • distrib.findPeakRanges() filters monotonously increasing/decreasing 'peaks' (artefacts) (7b967c0)

  • distrib.distrParFromPeakRanges: convert pandas.Series to numpy.ndarray at the beginning (bb19270)

  • distrib.test: fixed indents, replaced tabs by spaces (da8f402)

  • plotting: increases limit for warning about many plots (ef8a6fd)

  • plotting.plotVertBar() now with kwargs being forwarded to matplotlib (35dbce1)

  • utils.updatedDict() added (03fe42c)

  • isList() moved to utils (4367a6c)

  • datalocations.getDataFiles() argument handling lists and non-lists (4ee348a)

  • datalocations: filtering file names with in-/exclude patterns (d65efff)

  • datalocations.getDataFiles() with filename pattern argument (7d10c9c)

  • plotting.createFigure(): fixed argument (ba6ae3b)

  • added modules for plotting and distribution helpers (3472db8)

  • utils.fmtErr() (56457ae)

  • utils.grouper() (a5ad6aa)

  • utils.setPackage() added (969aae8)

  • datalocations module added (f4fb7ff)

  • utils: OS helpers and for 7-zip added (629c0fa)

  • utils.setLocaleUTF8() added (8dc76f3)

  • minor: line endings converted to UNIX style (45d3535)

  • reBin: removed unnecessary whitespace (65e622b)

  • reBin: show help when called without arguments or files (1c8244c)

  • reBin: fixed python3 compat. (05468c0)

  • disabled nbstripout checks (8835ff0)

  • license added (10bb685)

  • git: check if installed at all (80e7328)

  • handle exception if git submodule is moved out of parent repository (fb382bd)

  • added showBoolStatus() to pretty print the value of a boolean variable (b00316c)

  • added PathSelector in widgets module (189b56e)

  • git: using full python path for running nbstripout during checkRepo (1fbe3cc)

  • set git status text always transparent (9e5943f)

  • git: partial transparent git status if repo is clean (b2fc0e9)

  • fixed git module: using subprocess instead of ipython syntax '!' (95e7851)

  • functions for git repo status added (4c1f620)

  • fixed encoding header info (8375642)

  • use proper boolean operator (94fc592)

  • diff.textconv and filters for IPYNB and XLS files (ec97ca4)

  • added pycache to gitignore (7650b60)

  • fixed module path (e7f866a)

  • removed Jupyter startup scripts, not needed here (c0e07b0)

  • init file to make up a proper python module (7b984da)

  • small-angle scattering data rebinning routine by Brian Pauw (eae62d8)

  • code for parsing a PDH file (af59678)

  • Jupyter shortcuts added (85a8b9b)

  • Initial Commit (645ef06)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jupyter_analysis_tools-1.7.4.tar.gz (572.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jupyter_analysis_tools-1.7.4-py3-none-any.whl (44.9 kB view details)

Uploaded Python 3

File details

Details for the file jupyter_analysis_tools-1.7.4.tar.gz.

File metadata

  • Download URL: jupyter_analysis_tools-1.7.4.tar.gz
  • Upload date:
  • Size: 572.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for jupyter_analysis_tools-1.7.4.tar.gz
Algorithm Hash digest
SHA256 99408c80224113e5619b6a7627b13fe695facd04e15dcf197823115010fd5a46
MD5 e1d49c5abd8897d2015ea7bece650b41
BLAKE2b-256 5d40bd4bf4b26c4b2daed42ac23d743a0a11e5ec7fae454c6001204abcf5b4a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for jupyter_analysis_tools-1.7.4.tar.gz:

Publisher: ci-cd.yml on BAMresearch/jupyter-analysis-tools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jupyter_analysis_tools-1.7.4-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyter_analysis_tools-1.7.4-py3-none-any.whl
Algorithm Hash digest
SHA256 689a2f4d2c7afc3e28cd99cd23c7b6908741b13e124d14f41b28c7c425f908e5
MD5 5b5d35574f07fedf9436ad59319d2d86
BLAKE2b-256 53e2f7a64fb1c5e38b236431452ac7d6ea6b832ed61e163ea007e5116980f4ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for jupyter_analysis_tools-1.7.4-py3-none-any.whl:

Publisher: ci-cd.yml on BAMresearch/jupyter-analysis-tools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page