Yet another Python library with helpers and utilities for data analysis and processing.
Project description
Jupyter Analysis Tools (v1.7.4)
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
- DataStore: line length (
8741be2)
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
- DataStore: formatting (
5afbd91)
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
- utils: formatting (
b23f195)
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
- utils: satisfy flake8 (
2e3dc36)
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
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
- utils: fix imports (
ddd5369)
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
- analysis: minor fix (
601a6f7)
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
- readme: license link (
f98f736)
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
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 (
738fdd4)
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
99408c80224113e5619b6a7627b13fe695facd04e15dcf197823115010fd5a46
|
|
| MD5 |
e1d49c5abd8897d2015ea7bece650b41
|
|
| BLAKE2b-256 |
5d40bd4bf4b26c4b2daed42ac23d743a0a11e5ec7fae454c6001204abcf5b4a3
|
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
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
jupyter_analysis_tools-1.7.4.tar.gz -
Subject digest:
99408c80224113e5619b6a7627b13fe695facd04e15dcf197823115010fd5a46 - Sigstore transparency entry: 956484238
- Sigstore integration time:
-
Permalink:
BAMresearch/jupyter-analysis-tools@766a718abac99a74f69124fd69d56f4e0d8e4271 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/BAMresearch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci-cd.yml@766a718abac99a74f69124fd69d56f4e0d8e4271 -
Trigger Event:
push
-
Statement type:
File details
Details for the file jupyter_analysis_tools-1.7.4-py3-none-any.whl.
File metadata
- Download URL: jupyter_analysis_tools-1.7.4-py3-none-any.whl
- Upload date:
- Size: 44.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
689a2f4d2c7afc3e28cd99cd23c7b6908741b13e124d14f41b28c7c425f908e5
|
|
| MD5 |
5b5d35574f07fedf9436ad59319d2d86
|
|
| BLAKE2b-256 |
53e2f7a64fb1c5e38b236431452ac7d6ea6b832ed61e163ea007e5116980f4ec
|
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
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
jupyter_analysis_tools-1.7.4-py3-none-any.whl -
Subject digest:
689a2f4d2c7afc3e28cd99cd23c7b6908741b13e124d14f41b28c7c425f908e5 - Sigstore transparency entry: 956484241
- Sigstore integration time:
-
Permalink:
BAMresearch/jupyter-analysis-tools@766a718abac99a74f69124fd69d56f4e0d8e4271 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/BAMresearch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci-cd.yml@766a718abac99a74f69124fd69d56f4e0d8e4271 -
Trigger Event:
push
-
Statement type: