Feature quantification analysis
Skill HolobiomicsLab/asb-skill-collections/packs/metabolomics/lc-ms/skills/feature-quantification-analysis
Use when when you have loaded search result files from one or more DIA-MS analysis tools and need to assess the quantitative performance of identified features.From its SKILL.md
npx -y skills add HolobiomicsLab/asb-skill-collections --skill feature-quantification-analysisAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 14 stars14 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
7.6 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it
feature-quantification-analysis
Summary
Extract and visualize log₂ quantifications and coefficient of variation (CV) metrics for identified peptide features across DIA-MS search results, enabling comparison of quantitative accuracy and reproducibility between different analysis tools (e.g., DIA-NN vs. OpenSwath).
When to use
When you have loaded search result files from one or more DIA-MS analysis tools and need to assess the quantitative performance of identified features. Specifically, use this skill when: (1) you want to compare log₂ quantification distributions across tools or experimental conditions, (2) you need to evaluate feature stability via coefficient of variation, or (3) you aim to identify high-confidence analytes based on consistent quantification and low variance.
When NOT to use
- Input already contains pre-summarized (e.g., aggregated protein-level) quantifications; extract feature-level data first.
- Search results are from a single tool with no comparative goal; use basic visualization instead.
- Q-value filtering has already been applied upstream; re-filtering may introduce bias or exclude valid data.
Inputs
- Search result file paths (DIA-NN, OpenSwath, or other DIA-MS tool outputs)
- Tool metadata (software identifier, experiment label)
- Q-value cutoff threshold (numeric, e.g., 0.01 for 1% FDR)
- Feature identification records with log₂ quantifications and coefficient of variation
Outputs
- Log₂ quantifications violin plot (interactive Bokeh figure)
- Coefficient of variation violin plot (interactive Bokeh figure)
- Summary table with feature scores, quantification values, and CV metrics (CSV export)
- Analyte comparison metadata for downstream analysis
How to apply
Load search results containing feature identification and log₂ quantification values using ResultsLoader or tool-specific loaders (e.g., OSWDataAccess for OpenSwath). Apply Q-value filtering at your chosen cutoff threshold (e.g., 1% FDR) to retain only high-confidence identifications. Extract the log₂ quantification and coefficient of variation values for each identified analyte. Generate violin plots using InteractivePlotter with Bokeh rendering to visualize distributions of log₂ quantifications across tool groups or conditions; coefficient of variation plots show feature stability. Compile results into a summary table with feature scores and variables, then export as CSV for downstream statistical analysis or reporting.
Related tools
- ResultsLoader (Load and parse search result files, extracting feature identification and quantification records) — https://github.com/Roestlab/massdash
- OSWDataAccess (Tool-specific loader for OpenSwath search result files (OSW format)) — https://github.com/Roestlab/massdash
- InteractivePlotter (Generate violin plots and other interactive visualizations of quantification and CV distributions) — https://github.com/Roestlab/massdash
- Bokeh (Render interactive web-based violin and comparison plots for exploration)
- Streamlit (Host interactive GUI dashboard for loading data, setting parameters, and viewing quantification plots) — https://github.com/Roestlab/massdash
- MassDash (Modular Python package integrating all loaders, filters, and plotters for DIA-MS quantification analysis) — https://github.com/Roestlab/massdash
Examples
from massdash.loaders import ResultsLoader; from massdash.plotters import InteractivePlotter; loader = ResultsLoader('path/to/diaNN_results.tsv'); features = loader.load(q_value_cutoff=0.01); plotter = InteractivePlotter(features); plotter.plot_log2_quantifications_violin('condition'); plotter.plot_cv_violin(); features.to_csv('quantification_summary.csv')
Evaluation signals
- Violin plots show expected distribution shapes (e.g., unimodal or multimodal) with no rendering errors or missing values.
- Summary table contains one row per identified analyte with non-null log₂ quantification and CV values; row counts match the number of features passing Q-value cutoff.
- CV values lie within reasonable biological range (typically 0.05–1.0 for DIA features); values outside this range warrant investigation of outlier features.
- Comparing two tools: upset plot and summary table show concordance in identified analytes; tools identifying the same analyte should have comparable quantification distributions.
- CSV export is valid and parseable; column headers match expected schema (feature ID, log₂ quantification, coefficient of variation, tool identifier, Q-value).
Limitations
- Coefficient of variation calculation requires multiple replicates per feature; single-injection or sparse data may yield unreliable CV estimates.
- Q-value filtering at very stringent thresholds (e.g., <0.001) may exclude true features with borderline scores, reducing sample size for downstream comparisons.
- Visualization of violin plots is most effective with ≥50 features per group; smaller datasets may appear sparse or uninterpretable.
- Log₂ transformation assumes all quantification values are positive; zero or negative values from upstream processing will cause failures or undefined logarithms.
Evidence
- [other] Extract feature identifications, log2 quantifications, and coefficient of variation values for each analyte: "Extract feature identifications, log2 quantifications, and coefficient of variation values for each analyte."
- [other] Generate an identifications bar plot, log2 quantifications violin plot, and coefficient of variation violin plot using InteractivePlotter with Bokeh rendering: "Generate an identifications bar plot, log2 quantifications violin plot, and coefficient of variation violin plot using InteractivePlotter with Bokeh rendering."
- [other] Apply Q-value filtering at the specified cutoff threshold using results filtering at Q-value to select high-confidence identifications: "Apply Q-value filtering at the specified cutoff threshold using results filtering at Q-value to select high-confidence identifications."
- [other] The sidebar provides settings to control results at a specified Q-value cutoff: "The sidebar provides settings to control results at a specified Q-value cutoff"
- [other] Compile results into a summary table with feature scores and variables, then export as CSV: "Compile results into a summary table with feature scores and variables, then export as CSV."
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.