Skip to content
Back to skills

Qc Sample Batch Drift Correction

ASecurity

Use when you have a QC-annotated feature table (samples × features with

  • 16 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 12, 2026
ai-agentsgogitdocumentation

Security analysis

A100/100

Scanned September 12, 2026

npx -y skills add HolobiomicsLab/asb-skill-collections --skill qc-sample-batch-drift-correction --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Qc Sample Batch Drift Correction?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Qc Sample Batch Drift Correction
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/holobiomicslab-qc-sample-batch-drift-correction/badge)](https://www.skillsdirectory.com/skills/holobiomicslab-qc-sample-batch-drift-correction)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: qc-sample-batch-drift-correction
description: Use when you have a QC-annotated feature table (samples × features with
  QC sample identifiers) from LC-MS untargeted metabolomic profiling and observe systematic
  signal drift across the run sequence or between batch blocks.
license: CC-BY-4.0
metadata:
  edam_operation: http://edamontology.org/operation_3799
  edam_topics:
  - http://edamontology.org/topic_3172
  - http://edamontology.org/topic_0091
  tools:
  - MetCorR
  - R
  - OUKS
  techniques:
  - LC-MS
  - GC-MS
  license_tier: open
  provenance_tier: literature
derived_from:
- doi: 10.1021/acs.jproteome.1c00392
  title: Omics Untargeted Key Script
evidence_spans:
- New QC-GAM method (MetCorR) with associated scripts were introduced.
- R based open-source collection of scripts called :red_circle:*OUKS*
- R ≥4.1.2
claims: []
provenance:
  collection: https://w3id.org/holobiomicslab/asb-skill/collection/metabolomics/v2
  assembled_by: scripts/collect_metabolomics_collection.py
  sources:
  - build: coll_omics_untargeted_key_script_cq
    doi: 10.1021/acs.jproteome.1c00392
    title: Omics Untargeted Key Script
  dedup_kept_from: coll_omics_untargeted_key_script_cq
schema_version: 0.2.0
attribution:
  generator: AgenticScienceBuilder
  original_doi: 10.1021/acs.jproteome.1c00392
  all_source_dois:
  - 10.1021/acs.jproteome.1c00392
  zenodo_doi: 10.5281/zenodo.20794027
  curators: []
  promoter: Louis-Félix Nothias
  sponsor: CNRS & Université Côte d'Azur
---

# QC-Sample Batch Drift Correction

## Summary

Correct run-order and batch-dependent signal drift in LC-MS untargeted metabolomic feature tables using QC samples as reference points and Generalized Additive Models (GAM). This skill removes systematic variation introduced during sample acquisition while preserving biological signals.

## When to use

Apply this skill when you have a QC-annotated feature table (samples × features with QC sample identifiers) from LC-MS untargeted metabolomic profiling and observe systematic signal drift across the run sequence or between batch blocks. Use it after integration and imputation steps, before annotation or filtering, to ensure that downstream statistical comparisons are not confounded by instrumental signal decay or batch effects.

## When NOT to use

- Feature table lacks QC sample replicates — the method requires QC samples distributed across the run order to model drift trends.
- Input data are already corrected by instrument software or alternative methods — applying MetCorR on pre-corrected data may introduce circular bias.
- Batch effect is driven by biological group membership rather than technical run conditions — use alternative batch correction (e.g., ComBat) for biological confounding.

## Inputs

- QC-annotated feature intensity table (samples × features, numeric values)
- Sample metadata with run order (integer sequence) and batch block identifiers (categorical)
- QC sample labels to identify reference samples within metadata

## Outputs

- Corrected feature intensity table (same dimensions as input, numeric values)
- Correction factors per feature (numeric coefficients)
- Diagnostic plots (RLA-plot, intensity trajectories) showing drift removal

## How to apply

Load the QC-annotated feature table into R along with sample metadata (run order and batch identifiers). Execute the MetCorR QC-GAM algorithm by fitting Generalized Additive Models on QC sample intensities, with run order and batch as smooth terms to estimate correction factors for each feature. The algorithm models batch-dependent signal drift by using QC samples as reference points across the run sequence, then applies fitted correction factors to all sample features. Output the corrected feature table in CSV format, preserving sample and feature identifiers. Success is indicated by visual flattening of intensity trajectories in diagnostic plots (e.g., RLA-plot comparing before/after correction).

## Related tools

- **MetCorR** (Primary package implementing QC-GAM correction algorithm with run-order and batch smoothing terms) — https://github.com/plyush1993/MetCorR
- **R** (Runtime environment (≥4.1.2) for executing MetCorR package and feature table I/O) — https://cran.r-project.org/
- **OUKS** (Complete untargeted metabolomics workflow; MetCorR is integrated as step 4 (Correction)) — https://github.com/plyush1993/OUKS

## Examples

```
library(MetCorR); data(example_intensity); data(example_meta); out <- MetCorR(method=2, int_data=example_intensity, order=example_meta$order, class=example_meta$class, batch=example_meta$batch, qc_label="QC")
```

## Evaluation signals

- RLA-plot (Relative Log Abundance) shows mean intensity near zero post-correction, with reduced spread across run order compared to pre-correction
- Intensity trajectories of QC features flatten over run sequence; slope magnitude decreases after correction
- Corrected feature table has no negative values (if original was non-negative); preserves feature and sample identifiers
- D-Ratio metric (technical/biological variance ratio) improves post-correction; correlogram shows stronger biological clustering
- Feature correlation patterns match expected biology (e.g., co-regulated metabolite clusters) rather than reflecting run-order trends

## Limitations

- Requires QC samples to be well-distributed across the entire run order; sparse QC placement may produce unreliable trend estimates
- GAM fitting assumes smoothness in drift trajectory; abrupt instrumental failures or sudden batch shifts may not be adequately captured
- Method is designed for LC-MS untargeted metabolomics; applicability to other omics (e.g., GC-MS, proteomics) not validated in the article
- No explicit documentation of sensitivity to GAM hyperparameters (spline degrees of freedom) or guidance on parameter tuning
- Original article lacks validation on independent datasets or comparative benchmarking against other QC-based correction methods

## Evidence

- [other] Load QC-annotated feature table and run MetCorR: "Load the QC-annotated feature table (samples × features with QC sample identifiers) into R. 2. Execute the MetCorR QC-GAM correction algorithm via the MetCorR package, which models batch-dependent"
- [other] Apply correction factors to all features: "Apply the fitted correction factors to all feature abundances across the entire table. 4. Output the corrected feature table in CSV or tabular format, preserving sample and feature identifiers."
- [readme] MetCorR method overview: "MetCorR - QC-based metabolomic LC-MS signal drift correction using GAMs"
- [readme] MetCorR integration in workflow: ""4. Correction": D-Ratio metric, RLA-plot, correlogram, 2-factors PCA"
- [readme] Example invocation pattern: "out <- MetCorR( method = 2, int_data = example_intensity, order = example_meta$order, class = example_meta$class, batch = example_meta$batch, qc_label = "QC" )"

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in ai-agents →

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.