agentsclimarketplace

Chromatographic feature refinement

Skill HolobiomicsLab/asb-skill-collections/collections/metabolomics/v2/skills/chromatographic-feature-refinement

Use when after performing retention-time-based grouping on LC-MS data (e.g., with a 10–20 second window) and observing that many feature groups contain features with similar retention times but dissimilar abundance patterns across samples or different extracted ion chromatogram peak shapes.From its SKILL.md

Install
npx -y skills add HolobiomicsLab/asb-skill-collections --skill chromatographic-feature-refinement

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 15 stars15 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.3 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it

chromatographic-feature-refinement

Summary

Refine LC-MS feature groups by applying correlation-based or peak-shape-based similarity thresholds after initial retention-time grouping to split co-eluting features from different compounds and improve annotation specificity. This skill reduces false positive feature groupings caused by similar retention times but distinct abundance patterns or peak morphologies.

When to use

After performing retention-time-based grouping on LC-MS data (e.g., with a 10–20 second window) and observing that many feature groups contain features with similar retention times but dissimilar abundance patterns across samples or different extracted ion chromatogram peak shapes. This occurs when retention time alone is insufficient to discriminate features from different compounds that happen to co-elute.

When NOT to use

  • Input feature groups are already refined by abundance or peak shape and further splitting would fragment true co-eluting features from the same compound.
  • Sample abundances are not normally distributed or are highly skewed, making log2 transformation and Pearson correlation unreliable without additional normalization.
  • Extracted ion chromatogram peak shape data is unavailable or highly noisy, rendering EicSimilarityParam unreliable.

Inputs

  • XcmsExperiment object with retention-time-based feature grouping applied
  • filled feature value matrix (log2-transformed, with missing values imputed)

Outputs

  • XcmsExperiment object with refined (typically increased) number of feature groups
  • Total feature group count after refinement

How to apply

Load a pre-grouped XcmsExperiment object (output from retention-time-based grouping). Apply groupFeatures() with either AbundanceSimilarityParam (for abundance-based refinement) or EicSimilarityParam (for peak-shape-based refinement). For abundance refinement, set a threshold (e.g., 0.7) on log2-transformed filled feature values to split groups where pairwise correlations fall below the threshold; use filled=TRUE to impute missing peaks before correlation. For peak-shape refinement, use EicSimilarityParam with a threshold (e.g., 0.7) and specify the number of samples (n=2) to compare. The rationale is that features of the same compound should exhibit both correlated abundances across samples and similar peak morphologies; features failing these criteria likely originate from different compounds and should be separated into distinct groups. Extract and compare the resulting total feature group count to the input count to verify refinement has occurred.

Related tools

Examples

groupFeatures(xmse, param = AbundanceSimilarityParam(threshold = 0.7, transform = log2), filled = TRUE)

Evaluation signals

  • Total feature group count increases substantially from the initial retention-time-only grouping, indicating successful splitting of larger groups into smaller, more homogeneous sub-groups.
  • Inspect correlation matrix or peak-shape similarity matrix for refined groups: values within groups should exceed the specified threshold, and values between groups should fall below it.
  • Verify that the resulting feature groups have more similar retention times, abundances, and/or peak shapes within each group compared to the initial grouping.
  • Cross-check that no single-feature groups are created unless they represent genuine singletons after refinement (i.e., no spurious over-fragmentation).
  • Confirm that downstream annotation (e.g., database matching) shows improved specificity or reduced conflicting ion identifications per group.

Limitations

  • Abundance-based refinement assumes log2-transformed, normally distributed feature abundances; highly skewed or zero-inflated data may yield unreliable correlations. The filled=TRUE option requires robust peak-filling algorithm output to avoid false correlations from imputed values.
  • Peak-shape refinement (EicSimilarityParam) is sensitive to noise and requires well-defined, reproducible extracted ion chromatogram morphologies; noisy or broad peaks may prevent meaningful similarity comparison.
  • The choice of similarity threshold (e.g., 0.7) is data- and compound-dependent; inappropriate thresholds may cause under-splitting (true compounds remain grouped) or over-splitting (isotopologues or adducts are incorrectly separated).
  • Missing or partially detected chromatographic peaks in some samples can bias abundance correlations; the article notes that missing signals must be filled using signal integration at feature locations for reliability.

Evidence

  • [intro] Abundance-based refinement mechanism and parameters: "Apply groupFeatures() function with AbundanceSimilarityParam(threshold=0.7, transform=log2, filled=TRUE) to refine feature groups based on correlation of feature abundances across samples."
  • [intro] Peak-shape refinement mechanism: "Further refine feature groups based on similarity of extracted ion chromatogram peak shapes"
  • [intro] Compound features and grouping assumptions: "Features (ions) of the same compound should have similar retention time. The abundance of features"
  • [intro] Missing data handling for abundance refinement: "for samples in which no chromatographic peak for a feature was detected, all signal from the m/z - retention time range defined based on the detected chromatographic peaks was integrated"
  • [other] Observed outcome of abundance-based refinement on faahKO dataset: "many of the larger retention time-based feature groups were split into two or more sub-groups based on correlation of feature abundances, with the total number of feature groups increasing"

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.