Skip to main content

Mathematical utilities for MALDI-TOF mass spectrometry (Python port of the MALDIassist R package)

Project description

maldiassist (Python)

Python package v1.0.0 · Original R package: hiows/MALDIassist (v1.0.0)

maldiassist is a Python port of the MALDIassist R package (v1.0.0, R + Rcpp/C++). It reproduces the same algorithms and numerical results within floating-point tolerance. The workflow covers the full path from raw Bruker spectra to a cohort-level peak matrix:

  • Loading Bruker MALDI-TOF spectra
  • Smoothing and baseline correction
  • Gaussian KDE-based peak detection (including shoulder peaks)
  • Peak-quality metrics and filtering (intensity / prominence / strength)
  • Spectrum alignment to internal standards (linear / lowess)
  • Cohort feature analysis (frequent m/z discovery, matched peak matrix, two-group significance testing)
  • Visualization (matplotlib)

Performance-critical kernel-regression routines are implemented in C++ (via nanobind, a direct port of the original Rcpp core).

Example

The figure below shows the core workflow on real Bruker MALDI-TOF data: a raw spectrum (gray) is smoothed and baseline-corrected (red), then peaks are detected and filtered (blue).

MALDIassist workflow example


Installation

Requires Python 3.9+.

The package ships a small C++ extension (a nanobind port of the original Rcpp kernel-regression core) that accelerates peak detection. Pre-built wheels bundle this extension, so no compiler is needed:

pip install maldiassist
pip install "maldiassist[viz]"   # with visualization (matplotlib)

Alternatively, install a pre-built wheel from the GitHub Releases page, or build from source (requires a C++17 compiler and CMake, handled automatically by scikit-build-core):

pip install "git+https://github.com/hiows/MALDIassist-py.git"

The C++ extension is optional at runtime: if it cannot be imported the package transparently falls back to the pure-Python implementation, producing identical results (just slower).

For development (clone first, then editable install):

git clone https://github.com/hiows/MALDIassist-py.git
cd MALDIassist-py
pip install -e .              # core (numpy, scipy, pandas) + C++ extension
pip install -e ".[viz]"       # with visualization (matplotlib)
pip install -e ".[viz,test]"  # visualization + test tooling

The original R package can be installed from GitHub (CRAN submission pending):

# install.packages("remotes")
remotes::install_github("hiows/MALDIassist")

Quick start

The pipeline follows six steps: load → preprocess → KDE → peak picking → peak filtering → visualization.

import maldiassist as ma

1. Load

Point load_maldi_spectra() at a directory of Bruker flex data files. It returns a name-keyed dict of raw spectra.

raw_spectra = ma.load_maldi_spectra("data/")

2. Preprocess

Apply Savitzky-Golay smoothing and baseline subtraction.

preprocessed_spectra = ma.preprocess_maldi_spectra(
    raw_spectra,
    hws_sg=10,           # half-window size for Savitzky-Golay
    pno_sg=3,            # polynomial order
    baseline_type="snip",  # baseline algorithm
    iter_snip=50,        # SNIP iterations
)

Build Gaussian KDE spectra for peak filtering:

kde_spectra = ma.build_kde_spectra(preprocessed_spectra, bw=1)
kde_spectrum_only = {k: v["spectrum"] for k, v in kde_spectra.items()}

3. Peak picking

find_peaks_spectra() detects peaks (including shoulder peaks) using a Gaussian KDE approach.

peaks_list = ma.find_peaks_spectra(
    preprocessed_spectra,
    bw=1,                          # KDE bandwidth
    hws_peaks=10,
    weight_type="raw",
    cutoff_kappa_peak_strength=0.3,
    peak_retention_fraction=0.25,
)

4. Peak filtering

filter_peaks_spectra() removes low-quality peaks by intensity, prominence, and strength cutoffs. Pass the KDE spectra (not the preprocessed spectra) as the spectra argument, matching the R API.

filtered_peaks_list = ma.filter_peaks_spectra(
    kde_spectrum_only,
    peaks_list,
    cutoff_peak_intensity=100,
    cutoff_peak_prominence=50,
    cutoff_peak_strength=0.5,
    normalization_type="raw",
)

5. Visualization

Overlay a raw spectrum (gray), its preprocessed version (red), and the filtered peaks (blue) in the same style as the Example figure (requires the [viz] extra). The exact spectrum depends on your data/ directory and which sample is selected.

import matplotlib.pyplot as plt

example_range = (12000, 15000)
sample = next(iter(raw_spectra))
spec = raw_spectra[sample]
pp = preprocessed_spectra[sample]
fp = filtered_peaks_list[sample]

lo, hi = example_range
x_raw = spec.loc[(spec["mz"] >= lo) & (spec["mz"] <= hi), "mz"]
y_raw = spec.loc[(spec["mz"] >= lo) & (spec["mz"] <= hi), "intensity"]
x_pp = pp.loc[(pp["mz"] >= lo) & (pp["mz"] <= hi), "mz"]
y_pp = pp.loc[(pp["mz"] >= lo) & (pp["mz"] <= hi), "intensity"]

fig, ax = plt.subplots()
ax.plot(x_raw, y_raw, color="gray", lw=1.5, label="raw")
ax.plot(x_pp, y_pp, color="red", lw=2, label="preprocessed")
fp_r = fp[(fp["mz"] >= lo) & (fp["mz"] <= hi)]
ax.vlines(fp_r["mz"], 0, fp_r["intensity"], color="blue", lw=1.5, label="peaks")
ax.set_xlabel("m/z")
ax.set_ylabel("Intensity")
ax.set_ylim(0, y_raw.max())
plt.show()

You can also overlay all spectra in a single plot:

ma.visualize_spectra(preprocessed_spectra)

Cohort analysis

The example below follows a two-species MALDI-TOF cohort from PRIDE PXD058284: load Bruker spectra and sample metadata, preprocess and pick peaks, align across samples, build a matched-peak matrix, and test for group-discriminating m/z features.

1. Load spectra and metadata

import pandas as pd

raw_spectra = ma.load_maldi_spectra("data/raw/")
metadata = pd.read_excel("data/sample_metadata.xlsx")

# two-level species grouping (one label per sample)
sample_group = metadata.set_index("SampleID").reindex(raw_spectra.keys())["Species"].to_numpy()

2. Preprocess, KDE, and peak picking

preprocessed_spectra = ma.preprocess_maldi_spectra(
    raw_spectra,
    hws_sg=10,
    pno_sg=3,
    baseline_type="snip",
    iter_snip=50,
)

kde_spectra = ma.build_kde_spectra(preprocessed_spectra, bw=1)
kde_spectrum_only = {k: v["spectrum"] for k, v in kde_spectra.items()}

peaks_list = ma.find_peaks_spectra(
    preprocessed_spectra,
    bw=1,
    hws_peaks=10,
    weight_type="raw",
    cutoff_kappa_peak_strength=0.3,
    peak_retention_fraction=0.25,
)

filtered_peaks_list = ma.filter_peaks_spectra(
    kde_spectrum_only,
    peaks_list,
    cutoff_peak_intensity=100,
    cutoff_peak_prominence=50,
    cutoff_peak_strength=0.5,
    normalization_type="raw",
)

3. Align spectra

align_spectra() corrects m/z drift using internal standards selected from frequent, high-intensity peaks. Choose "linear" (two-point) or "lowess" (multi-point) alignment. It returns one aligned spectrum / peaks pair per sample (in alignment_results) plus the reference standard_mz values used as anchors.

aligned = ma.align_spectra(
    kde_spectrum_only,
    filtered_peaks_list,
    bin_width=20,
    alignment_mode="linear",  # or "lowess"
    hws_alignment=50,
)

aligned_peaks = {k: v["peaks"] for k, v in aligned["alignment_results"].items()}
exclude_mz = list(aligned["standard_mz"].values())  # alignment anchors, excluded below

4. Find frequent m/z values

find_frequent_mz() scans pooled peak m/z values across the aligned samples and refines each bin location with Gaussian KDE. Pass the alignment anchors to exclude_mz so the internal standards are dropped from the feature set.

freq_mz = ma.find_frequent_mz(
    aligned_peaks,
    bin_width=20,
    exclude_mz=exclude_mz,
)

5. Build a matched peak matrix

build_matched_matrix() matches each sample's peaks to the frequent m/z references and returns a detection matrix (detected_matrix) and a signed m/z-difference matrix (delta_mz_matrix), both sample-by-marker.

matched = ma.build_matched_matrix(
    aligned_peaks,
    reference_mz=freq_mz["mz"].to_numpy(),
    hws_match=10,
)

mat = matched["detected_matrix"]

Visualize the matrix with heatmap_matched_matrix(), optionally annotated by a per-sample grouping (requires [viz]):

ma.heatmap_matched_matrix(
    mat,
    group=sample_group,   # one entry per sample (row)
    hide_rownames=True,
    hide_colnames=True,
)

6. Test for significant m/z features

estimate_significance() runs a per-feature two-group comparison (t-test or Wilcoxon) on a sample-by-marker matrix and returns raw and adjusted p-values. Subset the matrix to the significant markers to highlight the discriminating features.

sig = ma.estimate_significance(
    mat,
    group=sample_group,      # two-level grouping, one entry per sample
    stat_method="t.test",    # or "wilcox"
    adj_method="BH",         # "none", "BH", or "bonferroni"
)

sig_cols = sig.loc[sig["adj_pvalue"] < 0.01, "feat_names"]
ma.heatmap_matched_matrix(
    mat[sig_cols],
    group=sample_group,
    hide_rownames=True,
    hide_colnames=True,
)

Applied to the PXD058284 two-species cohort (E. coli vs K. pneumoniae), the significant markers cleanly separate the samples by species:

Cohort matched-peak heatmap


R/Python parity

The Python package was validated step-by-step against MALDIassist R v1.0.0 on the same Bruker cohort and parameter set (Quick start / cohort analysis above). Summary:

Step Match
Loading / preprocessing / peak detection / filtering / alignment m/z and intensity within ~5×10⁻¹¹
find_frequent_mz identical row count; count and freq_ratio exact
build_matched_matrix detection matrix exact (difference 0)
estimate_significance p-value difference ~10⁻¹⁶; R and Python agree on adj. p < 0.01 calls

Core algorithmic details (Nadaraya–Watson kernel regression with 1st–3rd derivatives, SNIP/TopHat baselines, Savitzky–Golay boundary coefficients, R hist/pretty binning, R lowess, p.adjust, Wilcoxon continuity correction, etc.) are reproduced identically.

Note: kernel summation is computed in the same sequential accumulation order as R's Rcpp loop. NumPy's default pairwise summation can introduce tiny floating-point differences over symmetric windows that flip tie-breaking in extremum selection.

Performance

The kernel-regression hot paths (Gaussian KDE grid evaluation with 1st–3rd derivatives and bisection root finding) are implemented in C++ via nanobind (src/spectrum_math_cpp.cpp, a direct port of the original Rcpp spectrum_math.cpp). The compiled backend uses the identical sequential summation order as the pure-Python reference, so results match to floating-point tolerance while running substantially faster. When the extension is unavailable, maldiassist.spectrum_math falls back to the pure-Python path automatically. Set MALDIASSIST_DISABLE_CPP=1 to force the pure-Python backend (used by the parity tests in tests/test_kde_parity.py).


Main functions

Function Purpose
load_maldi_spectra() Load Bruker raw spectra from a directory
preprocess_maldi_spectra() Smooth and baseline-correct spectra
find_peaks() / find_peaks_spectra() Detect ordinary and shoulder peaks (single / dict)
find_peaks_fast() / find_peaks_spectra_fast() Fast local peak detection (single / dict)
filter_peaks() / filter_peaks_spectra() Filter peaks by intensity, prominence, and strength
build_kde_spectrum() / build_kde_spectra() Build Gaussian KDE spectra (single / dict)
find_frequent_mz() Find frequent m/z values across a cohort
align_spectra() Align spectra to internal standards (linear / lowess)
build_matched_matrix() Assemble a cohort peak intensity matrix
estimate_significance() Two-group significance testing per m/z feature
visualize_spectrum() / visualize_spectra() Visualize spectra with matplotlib (requires [viz])
heatmap_matched_matrix() Heatmap of a matched-peak matrix (requires [viz])

Correspondence with the R package

Step R function Python function
Loading load_maldi_spectra load_maldi_spectra
Preprocessing preprocess_maldi_spectra preprocess_maldi_spectra
KDE build_kde_spectrum / build_kde_spectra build_kde_spectrum / build_kde_spectra
Peak detection find_peaks / find_peaks_spectra find_peaks / find_peaks_spectra
Peak filtering filter_peaks / filter_peaks_spectra filter_peaks / filter_peaks_spectra
Alignment align_spectra align_spectra
Frequent m/z find_frequent_mz find_frequent_mz
Matched matrix build_matched_matrix build_matched_matrix
Significance test estimate_significance estimate_significance
Visualization visualize_spectrum/spectra, heatmap_matched_matrix visualize_spectrum/spectra, heatmap_matched_matrix

Author

Wonseok Oh (ORCID: 0009-0002-0687-8466)

How to cite

If you use maldiassist in your research, please cite the underlying MALDIassist software. From R you can run:

citation("MALDIassist")

A BibTeX entry:

@Manual{maldiassist,
  title  = {MALDIassist: Mathematical Utilities for MALDI-TOF Mass Spectrometry},
  author = {Wonseok Oh},
  year   = {2026},
  note   = {R package version 1.0.0; Python port version 1.0.0},
  url    = {https://github.com/hiows/MALDIassist},
  doi    = {10.5281/zenodo.21307258}
}

Archived on Zenodo: 10.5281/zenodo.21307258. To cite the software regardless of version, use the concept DOI 10.5281/zenodo.21219451.

License

MIT © 2026 Wonseok Oh. See LICENSE for details.

This project is a Python port of the MALDIassist R package (v1.0.0), which is also released under the MIT License (© 2026 Wonseok Oh).

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

maldiassist-1.0.0.tar.gz (110.5 kB view details)

Uploaded Source

Built Distributions

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

maldiassist-1.0.0-cp313-cp313-win_amd64.whl (98.1 kB view details)

Uploaded CPython 3.13Windows x86-64

maldiassist-1.0.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (99.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

maldiassist-1.0.0-cp313-cp313-macosx_10_14_universal2.whl (150.7 kB view details)

Uploaded CPython 3.13macOS 10.14+ universal2 (ARM64, x86-64)

maldiassist-1.0.0-cp312-cp312-win_amd64.whl (98.2 kB view details)

Uploaded CPython 3.12Windows x86-64

maldiassist-1.0.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (99.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

maldiassist-1.0.0-cp312-cp312-macosx_10_14_universal2.whl (150.6 kB view details)

Uploaded CPython 3.12macOS 10.14+ universal2 (ARM64, x86-64)

maldiassist-1.0.0-cp311-cp311-win_amd64.whl (99.1 kB view details)

Uploaded CPython 3.11Windows x86-64

maldiassist-1.0.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (100.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

maldiassist-1.0.0-cp311-cp311-macosx_10_14_universal2.whl (152.8 kB view details)

Uploaded CPython 3.11macOS 10.14+ universal2 (ARM64, x86-64)

maldiassist-1.0.0-cp310-cp310-win_amd64.whl (99.2 kB view details)

Uploaded CPython 3.10Windows x86-64

maldiassist-1.0.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (101.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

maldiassist-1.0.0-cp310-cp310-macosx_10_14_universal2.whl (153.4 kB view details)

Uploaded CPython 3.10macOS 10.14+ universal2 (ARM64, x86-64)

maldiassist-1.0.0-cp39-cp39-win_amd64.whl (99.5 kB view details)

Uploaded CPython 3.9Windows x86-64

maldiassist-1.0.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (101.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

maldiassist-1.0.0-cp39-cp39-macosx_10_14_universal2.whl (153.8 kB view details)

Uploaded CPython 3.9macOS 10.14+ universal2 (ARM64, x86-64)

File details

Details for the file maldiassist-1.0.0.tar.gz.

File metadata

  • Download URL: maldiassist-1.0.0.tar.gz
  • Upload date:
  • Size: 110.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for maldiassist-1.0.0.tar.gz
Algorithm Hash digest
SHA256 e780174f7cf49f0f42267dc346ddd134a9237dacca5a1a219eb142c99e117c96
MD5 39c21689bc864593729c6d39fc745c8a
BLAKE2b-256 07d5ab6c842bc897789bd7e172ddd6aff5a22683d5a76fa7d4b7fe9b0ce4c147

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0.tar.gz:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: maldiassist-1.0.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 98.1 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for maldiassist-1.0.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 4afe806e26d243d2cb41019c80a262183f1e76dbfbbb6b07aa5a7cfc7af3cdb7
MD5 432618680b8dcabf7a2e5478df53f2eb
BLAKE2b-256 1680de8a879681306119da5bf73365ff2b5d277be380534654b0ba5649b71a89

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp313-cp313-win_amd64.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for maldiassist-1.0.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 69685d6653b19d3193fc59480e58d7791d10ed798483e6dfcaebacf6de1e5110
MD5 b15acef00344ff226f90737961ace7da
BLAKE2b-256 2690ab28bd677ac80cf7dcfde52a5d081e454ee47b731f2871d620d8b262b156

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp313-cp313-macosx_10_14_universal2.whl.

File metadata

File hashes

Hashes for maldiassist-1.0.0-cp313-cp313-macosx_10_14_universal2.whl
Algorithm Hash digest
SHA256 72ecaa05f0b73a8f15c65f0e70cb5e4756a2777bb4cca6e8eaffede5be646ed2
MD5 432cb48ff61cef1dd916568d5dbffd6c
BLAKE2b-256 e3d2eea2380dfce13ace571f725394f9a96ce3fdfb95d76f1e62432c2d40130b

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp313-cp313-macosx_10_14_universal2.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: maldiassist-1.0.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 98.2 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for maldiassist-1.0.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 15666257ac15e8fbc7bb0075e21e1d69a07968f8b11d063290b7f75c960658a6
MD5 38799de4ae24fc3491300b3c77c07702
BLAKE2b-256 822d127942745c161801af253f2d1e3c5e5e8771374dabff377aba1b84a8b87c

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp312-cp312-win_amd64.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for maldiassist-1.0.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 824cbc9fc4d6f77e00d64254b3b4186466f6829a9d27fdff9d655720c30d85ae
MD5 bb4511f37d100798a19a5e48141f4880
BLAKE2b-256 db7b56a256da75c2d8da57d6813edd0d56ff698764ad2af9bad73faf48872a17

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp312-cp312-macosx_10_14_universal2.whl.

File metadata

File hashes

Hashes for maldiassist-1.0.0-cp312-cp312-macosx_10_14_universal2.whl
Algorithm Hash digest
SHA256 3dd54b0ddaa389ba087159d7b7693e834efd1234ad6137ea623fd8e355fef34e
MD5 f1506b36a1720c3f153aca94bf48c7d0
BLAKE2b-256 f99d318bf5b99098b39edee25f51aece97b23af2ede64889467ee24ef20387ff

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp312-cp312-macosx_10_14_universal2.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: maldiassist-1.0.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 99.1 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for maldiassist-1.0.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 837c6578650767844a98355c724a25a8c0e351e73fe2ea9abaa49638c47d90c4
MD5 82722571afa6ac969958e830bf120493
BLAKE2b-256 3f8be49bff87074780eba29831ff7e781f89a2f1e2d3ef36681d2874ee0dc5fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp311-cp311-win_amd64.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for maldiassist-1.0.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2e7dec50a8964d057cbea91207ee6b451a433e736c6d2f04849bc9dfa80c2985
MD5 12080c670de1d70855585e2790373080
BLAKE2b-256 9404bd8328fd46220c86083c5136e98ba743762b827c911fafe353e99fa854f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp311-cp311-macosx_10_14_universal2.whl.

File metadata

File hashes

Hashes for maldiassist-1.0.0-cp311-cp311-macosx_10_14_universal2.whl
Algorithm Hash digest
SHA256 f422fdae7471c796e2a26d6f4b82e29205dfb63e2c7e45875588289db7cc67a7
MD5 cab727ef5e46105cb0c1f97e6b7f81a1
BLAKE2b-256 eb36fa693f5d0e2740a462e95eaaf92ad577cb4d03bebef363e003b0ae7386c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp311-cp311-macosx_10_14_universal2.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: maldiassist-1.0.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 99.2 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for maldiassist-1.0.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 12c2cb974cec486730377b0214b0527c374a560555bcd3154b0f751cb8a145a8
MD5 10c3ba6ce1b506a9c3ecfcc00f3af94c
BLAKE2b-256 a3dace52080907b7a8a1209f077cc7188ba862989fafb111ae11cca6a74cf284

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp310-cp310-win_amd64.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for maldiassist-1.0.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 55bf84f488a21ccaa4feb152e612c3b1a144c8d8e676544b4eab1f5dcfefacb2
MD5 176913a95f8239bb65e817bd3b027042
BLAKE2b-256 41d4c412560ae68c56609908b41edd56e1909fc0106c1b67935cf4fa23ddbd24

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp310-cp310-macosx_10_14_universal2.whl.

File metadata

File hashes

Hashes for maldiassist-1.0.0-cp310-cp310-macosx_10_14_universal2.whl
Algorithm Hash digest
SHA256 0b756527eea9f0197505483fdced49d507b426b6c6e80d11dd31a1a131309e1e
MD5 b50b4e64d56ba46a9ab1c18deea747a4
BLAKE2b-256 07762ad78094d9956a1ab0a8a1ab480ae20ad301f6d13f1a59886b2435a1b5f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp310-cp310-macosx_10_14_universal2.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: maldiassist-1.0.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 99.5 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for maldiassist-1.0.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 c907837618553ba4478cef1747d0573bcaf26139235d4fa6259343590acabe06
MD5 2db272adc1fb69f9b957ed059b708e98
BLAKE2b-256 e7e08763379802155c314f33261bf9c722f0579a48371966ee521a5057e8cfe3

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp39-cp39-win_amd64.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for maldiassist-1.0.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b32aade157c7d7098a106b42a42e9a5446a3cb05a974d0f93c51cb7dfae8cc5a
MD5 2fef40dd690eec67384f8a5c765e74ec
BLAKE2b-256 86e55304aaa043ac4aa926d1537a41a1cc6635240fe7eae2b8aff8883887b559

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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

File details

Details for the file maldiassist-1.0.0-cp39-cp39-macosx_10_14_universal2.whl.

File metadata

File hashes

Hashes for maldiassist-1.0.0-cp39-cp39-macosx_10_14_universal2.whl
Algorithm Hash digest
SHA256 19861e13211f3d0e2f067cb671c1261e31b63fbf2a286591e3b5dbc16440a0ec
MD5 fd984dacfc9e8248f27af06f9d408a5e
BLAKE2b-256 09f52296095b01485b39228dc7868eb8ddccef14c191af43f8b582bed0527a0e

See more details on using hashes here.

Provenance

The following attestation bundles were made for maldiassist-1.0.0-cp39-cp39-macosx_10_14_universal2.whl:

Publisher: wheels.yml on hiows/MALDIassist-py

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