API Reference#

Complete reference for all public classes and functions in MaldiAMRKit, organized by module.

Core Data Structures#

maldiamrkit.MaldiSpectrum

A single MALDI-TOF spectrum.

maldiamrkit.MaldiSet

A collection of MALDI-TOF spectra with metadata.

Filters#

maldiamrkit.filters.SpectrumFilter

Base filter with operator overloading.

maldiamrkit.filters.SpeciesFilter

Filter by species name(s).

maldiamrkit.filters.DrugFilter

Filter by antibiotic resistance status.

maldiamrkit.filters.QualityFilter

Filter by quality metrics stored in metadata columns.

maldiamrkit.filters.MetadataFilter

Filter by arbitrary metadata column condition.

Preprocessing#

maldiamrkit.preprocessing.PreprocessingPipeline

Composable pipeline of preprocessing steps for MALDI-TOF spectra.

maldiamrkit.preprocessing.preprocess

Apply preprocessing pipeline to a raw MALDI-TOF spectrum.

maldiamrkit.preprocessing.bin_spectrum

Bin spectrum intensities into m/z intervals.

maldiamrkit.preprocessing.get_bin_metadata

Generate bin metadata from edges.

maldiamrkit.preprocessing.BinningMethod

Supported binning methods.

maldiamrkit.preprocessing.estimate_snr

Estimate signal-to-noise ratio of a spectrum.

maldiamrkit.preprocessing.SpectrumQuality

Comprehensive quality assessment for MALDI-TOF spectra.

maldiamrkit.preprocessing.SpectrumQualityReport

Quality metrics report for a single MALDI-TOF spectrum.

maldiamrkit.preprocessing.SignalMethod

Method for estimating the signal level in SNR computation.

maldiamrkit.preprocessing.merge_replicates

Merge replicate spectra into a single consensus spectrum.

maldiamrkit.preprocessing.detect_outlier_replicates

Identify outlier replicates using correlation with the median spectrum.

maldiamrkit.preprocessing.MergingMethod

Supported replicate merging methods.

Transformers#

maldiamrkit.preprocessing.ClipNegatives

Clip negative intensity values to zero.

maldiamrkit.preprocessing.SqrtTransform

Variance-stabilizing square root transformation.

maldiamrkit.preprocessing.LogTransform

Log1p intensity transformation (alternative to sqrt).

maldiamrkit.preprocessing.SavitzkyGolaySmooth

Savitzky-Golay smoothing filter.

maldiamrkit.preprocessing.MovingAverageSmooth

Moving-average smoothing filter.

maldiamrkit.preprocessing.SNIPBaseline

SNIP (Statistics-sensitive Non-linear Iterative Peak-clipping) baseline correction.

maldiamrkit.preprocessing.TopHatBaseline

Morphological top-hat baseline subtraction.

maldiamrkit.preprocessing.ConvexHullBaseline

Parameter-free baseline from the lower convex hull of the spectrum.

maldiamrkit.preprocessing.MedianBaseline

Rolling-median baseline subtraction.

maldiamrkit.preprocessing.MzTrimmer

Trim spectrum to a specified m/z range.

maldiamrkit.preprocessing.TICNormalizer

Total Ion Current normalization (intensities sum to 1).

maldiamrkit.preprocessing.MedianNormalizer

Normalize intensities by median value.

maldiamrkit.preprocessing.PQNNormalizer

Probabilistic Quotient Normalization.

maldiamrkit.preprocessing.MzMultiTrimmer

Keep only specific m/z ranges from the spectrum.

Alignment#

maldiamrkit.alignment.Warping

Align MALDI-TOF spectra to a reference using different strategies.

maldiamrkit.alignment.RawWarping

Align MALDI-TOF spectra using raw (full resolution) data.

maldiamrkit.alignment.create_raw_input

Create input DataFrame for RawWarping from a directory of spectrum files.

maldiamrkit.alignment.AlignmentStrategy

Base class for alignment strategies.

maldiamrkit.alignment.AlignmentMethod

Supported alignment/warping methods.

Peak Detection#

maldiamrkit.detection.MaldiPeakDetector

Peak detector for MALDI-TOF spectra with local maxima and topological methods.

maldiamrkit.detection.PeakMethod

Supported peak detection methods.

Evaluation#

Metrics#

maldiamrkit.evaluation.very_major_error_rate

Very Major Error rate: resistant isolates classified as susceptible.

maldiamrkit.evaluation.major_error_rate

Major Error rate: susceptible isolates classified as resistant.

maldiamrkit.evaluation.sensitivity_score

Sensitivity (recall) for the resistant class.

maldiamrkit.evaluation.specificity_score

Specificity (true negative rate) for the susceptible class.

maldiamrkit.evaluation.categorical_agreement

Categorical agreement (accuracy) as reported in AST studies.

Reports#

maldiamrkit.evaluation.amr_classification_report

Full AMR classification report.

maldiamrkit.evaluation.mic_regression_report

Compute MIC regression metrics on log2-MIC predictions.

maldiamrkit.evaluation.amr_multilabel_report

AMR classification report for multiple antibiotics.

maldiamrkit.evaluation.vme_me_curve

VME and ME rates at varying decision thresholds.

Scorers#

maldiamrkit.evaluation.vme_scorer

maldiamrkit.evaluation.me_scorer

Splitting#

maldiamrkit.evaluation.stratified_species_drug_split

Stratified train/test split preserving species-drug label distributions.

maldiamrkit.evaluation.case_based_split

Train/test split keeping all samples from the same patient together.

maldiamrkit.evaluation.SpeciesDrugStratifiedKFold

K-fold cross-validation with species-drug stratification.

maldiamrkit.evaluation.CaseGroupedKFold

K-fold cross-validation keeping patient cases together and stratified by y.

Susceptibility#

MIC encoding, clinical breakpoint tables, and R/I/S label encoding.

maldiamrkit.susceptibility.MICEncoder

Encode MIC strings into log2 numeric values and optional S/I/R labels.

maldiamrkit.susceptibility.BreakpointTable

Clinical breakpoint table for MIC interpretation.

maldiamrkit.susceptibility.BreakpointResult

Result of applying a clinical breakpoint to a single MIC value.

maldiamrkit.susceptibility.LabelEncoder

Encode R/I/S resistance labels to binary (0/1).

maldiamrkit.susceptibility.IntermediateHandling

Strategy for handling intermediate (I) resistance labels.

Similarity#

maldiamrkit.similarity.spectral_distance

Compute distance between two spectra.

maldiamrkit.similarity.SpectralMetric

Supported spectral distance/similarity metrics.

maldiamrkit.similarity.pairwise_distances

Compute an n x n symmetric distance matrix.

maldiamrkit.similarity.cluster_spectra

Cluster spectra from a precomputed distance matrix.

maldiamrkit.similarity.hierarchical_clustering

Agglomerative hierarchical clustering on a precomputed distance matrix.

maldiamrkit.similarity.hdbscan_clustering

HDBSCAN clustering on a precomputed distance matrix.

maldiamrkit.similarity.kmedoids_clustering

K-medoids clustering using the PAM algorithm.

maldiamrkit.similarity.silhouette_scores

Silhouette score for a clustering on a precomputed distance matrix.

maldiamrkit.similarity.cluster_metadata_concordance

Evaluate clustering agreement with known metadata labels.

maldiamrkit.similarity.ClusteringMethod

Supported clustering algorithms for cluster_spectra().

maldiamrkit.similarity.KMedoidsInit

Initialization strategy for kmedoids_clustering().

maldiamrkit.similarity.plot_distance_heatmap

Plot a pairwise distance matrix as a heatmap.

maldiamrkit.similarity.plot_dendrogram

Plot a dendrogram from a hierarchical clustering linkage matrix.

Differential Analysis#

Analysis#

maldiamrkit.differential.DifferentialAnalysis

Identify discriminative m/z peaks between resistant and susceptible groups.

maldiamrkit.differential.StatisticalTest

Supported statistical tests for run().

maldiamrkit.differential.CorrectionMethod

Supported multiple-testing corrections for run().

Plots#

maldiamrkit.differential.plot_volcano

Volcano plot of log2 fold change vs. -log10 adjusted p-value.

maldiamrkit.differential.plot_manhattan

Manhattan plot along the m/z axis.

maldiamrkit.differential.plot_drug_comparison

Visualise a multi-drug differential-peak comparison matrix.

maldiamrkit.differential.DrugComparisonKind

Rendering kind for plot_drug_comparison().

Drift Monitoring#

Monitor#

maldiamrkit.drift.DriftMonitor

Monitor spectral drift over time using baseline-anchored metrics.

Plots#

maldiamrkit.drift.plot_reference_drift

Line plot of reference-similarity distance over time.

maldiamrkit.drift.plot_pca_drift

PCA centroid trajectory colored by time.

maldiamrkit.drift.plot_peak_stability

Line plot of peak-selection Jaccard stability over time.

maldiamrkit.drift.plot_effect_size_drift

Multi-line plot of per-peak Cohen's d over time.

Visualization#

maldiamrkit.visualization.plot_spectrum

Plot a single MALDI-TOF spectrum with real m/z axis.

maldiamrkit.visualization.plot_pseudogel

Display a pseudogel heatmap of the spectra.

maldiamrkit.visualization.plot_peaks

Plot detected peaks overlaid on original spectra.

maldiamrkit.visualization.plot_alignment

Plot comparison of original vs aligned spectra against reference.

maldiamrkit.visualization.plot_pca

Scatter plot of a PCA embedding colored by metadata.

maldiamrkit.visualization.plot_tsne

Scatter plot of a t-SNE embedding colored by metadata.

maldiamrkit.visualization.plot_umap

Scatter plot of a UMAP embedding colored by metadata.

Dataset Building & Loading#

Builder#

maldiamrkit.data.DatasetBuilder

Build a standardised dataset from any supported input layout.

maldiamrkit.data.ProcessingHandler

Define an additional processing output folder.

maldiamrkit.data.BuildReport

Summary of a dataset build.

Input Layouts#

maldiamrkit.data.InputLayout

Abstract adapter for discovering spectra and metadata.

maldiamrkit.data.FlatLayout

Flat directory of pre-exported text spectrum files + metadata CSV.

maldiamrkit.data.BrukerTreeLayout

Hierarchical directory tree containing raw Bruker binary data.

Loader#

maldiamrkit.data.DatasetLoader

Load a dataset into a MaldiSet.

Dataset Layouts#

maldiamrkit.data.DatasetLayout

Abstract adapter for navigating and loading from a dataset.

maldiamrkit.data.DRIAMSLayout

Navigate a DRIAMS-like dataset structure.

maldiamrkit.data.MARISMaLayout

Navigate a dataset of raw Bruker spectra organised in a tree.

Duplicate Handling#

maldiamrkit.data.DuplicateStrategy

Strategy for handling duplicate spectrum identifiers.

I/O#

maldiamrkit.io.read_spectrum

Read a raw spectrum file into a DataFrame.

maldiamrkit.io.parse_mic_column

Parse a column of MIC strings into numeric values and qualifiers.