Skip to main content

orangemetabo — MetaboAnalyst-Style Statistics for Orange3

Add-on for Orange3 that reproduces the MetaboAnalyst univariate workflow for GC-MS / GC-IMS feature tables (Compound Discoverer exports), as used in the coffee-fermentation study (AK Weller).

Pipeline

Feature Table CSV ──> Preprocess ──> [Filter] ──> Univariate Stats ──> Heatmap
 (2-header, ;)       (Sum-Norm,       (QC)         (ANOVA / Welch /     (Top-N,
                       log2, Imputation,             Kruskal + BH-FDR     Ward cluster,
                       Autoscale/Pareto)             + log2FC + means)     PNG/SVG export)
                                                                           └─> Volcano
                                                                              (log2FC vs -log10 FDR)

Widgets (category Metabo Weller)

Widget Function
Metabo Feature Table Load Compound Discoverer 2-header semicolon CSV; sample×feature Table with group/sample metas; pseudo-replicate (<3 replicates) hint
Metabo Preprocess Optional imputation (min / k-NN) → sum-normalisation → log2 → autoscale (z) / Pareto
Metabo Feature Filter Drop features by missing fraction, zero variance, constant, or below-detection threshold
Metabo Univariate Stats One-way ANOVA, Welch two-sample t-test, or Kruskal-Wallis per feature + Benjamini-Hochberg FDR + log2FC + group means
Metabo Volcano Volcano plot (log2FC vs. −log10 FDR) for a two-group contrast — taken from the Univariate Stats results, or computed from Data alone (Welch t-test + BH-FDR) so Preprocess → Volcano already plots; FDR/|log2FC| thresholds, direction colours, top-N labels, PNG/SVG export; click a point to select a feature (shift-click to add) to see its per-group distribution as a box plot; emits the significant features and the selected features' sample values
Metabo Heatmap Top-N features by p, Ward/Euclidean row clustering, group bar, PNG/SVG export

Correctness

orangemetabo/metabo_core.py is the headless, Qt-free analytics core. The default pipeline (sum-normalise → log2 → autoscale → one-way ANOVA → BH-FDR) reproduces the validated ground truth analysis_CV/cv_anova_alle_97_features.csv exactly: 97/97 features on F, p, and FDR (max abs diff < 5e-5). Reproduce with _test_core.py (core) and _test_e2e.py (all six widgets, offscreen) — both run against the Dropbox ground truth and print 97/97. The volcano contrast is checked to equal the Welch log2FC and the ground-truth log2FC_ANF_vs_WILD column.

Note on the volcano's fold change: it is the difference of the per-group means in the space of the data you feed in. For a real log2 fold change, preprocess with Sum normalisation + log2 and no scaling (Metabo Preprocess → Method "Sum (total area)", log2 on, Scaling "None"). With autoscaled/Pareto data the x-axis is a scaled mean difference (the p-values are unaffected, since the t-test is scale-invariant per feature).

Installation

cd orange-metabo-addon
/Applications/Orange.app/Contents/Frameworks/Python.framework/Versions/Current/bin/python3 -m pip install -e .

Or from the monorepo: python ../orange-install.py metabo.

Metadata

Release files for orangemetabo 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for orangemetabo 0.3.0
File Size Uploaded
orangemetabo-0.3.0.tar.gz 23.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for orangemetabo 0.3.0
File Interpreter ABI Platform
orangemetabo-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 53.4 kB

Release files / orangemetabo-0.3.0.tar.gz

Download URL orangemetabo-0.3.0.tar.gz
Size 23.9 kB
Tags Source
SHA-256 checksum
How to use checksums
ada645049b493d34452562139264529e2f1428b83ef3061bb5f4a5c6d8869a8b
BLAKE2b-256 checksum
How to use checksums
f0578188ffd5bfa4b05921b84848475f82b229cc5592a61468c501f6414d3750
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.8

Release files / orangemetabo-0.3.0-py3-none-any.whl

Download URL orangemetabo-0.3.0-py3-none-any.whl
Size 29.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
34e037ca06c0ec3ef197e6167b725b0a9dd02c4dcce248e568b6bf083175f8c4
BLAKE2b-256 checksum
How to use checksums
36ab6fa92effe8d7bf2abfc5e7635a80b7dd69a28450f012531e712e2563d5e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.8

Release history Release notifications | RSS feed

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

This release

0.3.0 This release

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page