Quality control detects and removes acquisition artifacts before any downstream analysis. The Time parameter is the master axis: flow-rate instability, signal drift, clogs, and CyTOF sensitivity decay all show up as signal-versus-time anomalies, which is what flowAI, flowCut, flowClean, and PeacoQC detect. This skill covers tool selection, the mandatory QC ordering (compensate -> transform -> margins -> time QC -> gating), CyTOF-specific checks, the instrument calibration/standardization machinery (MESF, CS&T, peak-2) that makes cross-study comparison possible, and batch-level outlier flagging.
# R/Bioconductor
BiocManager::install(c('flowCore', 'flowAI', 'PeacoQC', 'flowDensity', 'CATALYST'))
Tell your AI agent what you want to do: - "Run automated QC on my FCS files and tell me what was removed" - "Remove margin events, then clean unstable time segments with PeacoQC" - "Check my CyTOF run for signal drift and gate single nucleated cells" - "Flag outlier samples across my batch"
"Run flowAI on these files but it's removing too much - it's a slow acquisition, so tune the flow-rate sensitivity and show me the report before committing." "Remove margin/boundary events first, then apply PeacoQC across the marker channels - and explain why margins have to go before the density step."
"This is a multi-day CyTOF study - check EQ-bead signal versus time for drift and gate intercalator-positive single cells by Event_length and Gaussian parameters." "Detect per-channel signal drift over acquisition time and tell me which markers exceed 10% change."
"Convert my PE MFI to antibodies-bound-per-cell using Quantibrite beads." "Build a per-sample QC table (events, flow-rate stability, marker medians) and flag outliers by MAD."
MAD and IT_limit are LESS strict when higher (counterintuitive); run RemoveMargins() first.