Version: 1.0.0
Commit Hash: 1cf3be5ce434b4a05a714d110b163e30d9c90012
Author: CauldronGO Team
Category: lysoip-qc
Two one-sided Fisher's exact tests asking whether marker genes clear the Positive/Negative gate more often than the run's own background, optionally ranked across every curated list
Lyso-IP Organelle Coverage
Installation
⬇️ Click here to install in Cauldron (requires Cauldron to be running)
Repository:
https://github.com/noatgnu/lysoip-organelle-coverage-plugin
Manual installation:
- Open Cauldron
- Go to Plugins → Install from Repository
- Paste:
https://github.com/noatgnu/lysoip-organelle-coverage-plugin - Click Install
ID: lysoip-organelle-coverage
Version: 1.0.0
Category: lysoip-qc
Author: CauldronGO Team
Description
Two one-sided Fisher's exact tests asking whether marker genes clear the Positive/Negative gate more often than the run's own background, optionally ranked across every curated list
Workflow Diagram
flowchart TD
Start([Start]) --> step1
step1["Loading verdicts"]
step1 --> load_lists
load_lists["Loading organelle marker lists"]
load_lists --> test_all
test_all{"Test all curated lists?"}
test_all -->|"yes"| test_all_lists
test_all -->|"no"| test_one_list
test_all_lists["Testing coverage against every curated list"]
test_all_lists --> step2
test_one_list["Testing coverage against the target list"]
test_one_list --> step2
step2["Applying BH-FDR correction and ranking"]
step2 --> End([End])
Runtime
-
Environments:
python -
Entrypoint:
lysoip_organelle_coverage.py
Inputs
| Name | Label | Type | Required | Default | Visibility |
|---|---|---|---|---|---|
verdict_file |
Verdicts | file | Yes | - | Always visible |
organelle_list |
Expected Organelle List | select (LSD (Platt 2018) (53 genes), Lysosome (Hein 2025) (158 genes), LSD + Lysosome (180 genes), ER (Hein 2025) (349 genes), Golgi (Hein 2025) (87 genes), Endosome (Park and Itzhak 2022) (93 genes), Mitochondria (Rath 2021) (1136 genes), Ribosome (Nakao 2004) (80 genes), Nucleus (Leung 2006) (410 genes)) | Yes | LSD + Lysosome | Always visible |
test_all_lists |
Test Against Every List | boolean | No | false | Always visible |
coverage_alpha |
Coverage Alpha | number (min: 0, max: 1, step: 0.01) | No | 0.05 | Always visible |
Input Details
Verdicts (verdict_file)
verdict.tsv from the Lyso-IP Gating & Ranking plugin
Expected Organelle List (organelle_list)
Curated marker-gene list bundled with this plugin, same source as the Lyso-IP Organelle Specificity plugin
- Options:
LSD (Platt 2018)(LSD (Platt 2018) (53 genes)),Lysosome (Hein 2025)(Lysosome (Hein 2025) (158 genes)),LSD + Lysosome(LSD + Lysosome (180 genes)),ER (Hein 2025)(ER (Hein 2025) (349 genes)),Golgi (Hein 2025)(Golgi (Hein 2025) (87 genes)),Endosome (Park and Itzhak 2022)(Endosome (Park and Itzhak 2022) (93 genes)),Mitochondria (Rath 2021)(Mitochondria (Rath 2021) (1136 genes)),Ribosome (Nakao 2004)(Ribosome (Nakao 2004) (80 genes)),Nucleus (Leung 2006)(Nucleus (Leung 2006) (410 genes))
Test Against Every List (test_all_lists)
When enabled, tests coverage against every curated list (not just the expected one), BH-FDR corrects across the panel, and ranks best-match-first — useful for diagnosing a mismatched or contaminated sample
Coverage Alpha (coverage_alpha)
p-value threshold for calling a list's enrichment significant
Outputs
| Name | File | Type | Format | Description |
|---|---|---|---|---|
organelle_coverage |
organelle_coverage.tsv |
data | tsv | One row per tested organelle list with marker/background Positive/Negative/Nonsignificant counts, Fisher's exact p-values, and (when testing all lists) BH-FDR-corrected q-values, ranked best-match-first |
Requirements
- Python Version: >=3.11
Package Dependencies (Inline)
Packages are defined inline in the plugin configuration:
scipy>=1.11.0
Note: When you create a custom environment for this plugin, these dependencies will be automatically installed.
Example Data
This plugin includes example data for testing:
verdict_file: examples/verdict.tsv
organelle_list: LSD + Lysosome
test_all_lists: true
Load example data by clicking the Load Example button in the UI.
Usage
Via UI
- Navigate to lysoip-qc → Lyso-IP Organelle Coverage
- Fill in the required inputs
- Click Run Analysis
Via Plugin System
const jobId = await pluginService.executePlugin('lysoip-organelle-coverage', {
// Add parameters here
});