Post Thu Jul 21, 2022 8:53 am

CytoNorm Anchor Contents for Immunotherapy Sample Analysis

Hello everyone. I am having an issue understanding correct sample composition for using CytoNorm in my project.

I am doing my PhD on analyzing total leukocyte samples from a cancer immunotherapy clinical trial on the Helios. Suffice to say, I am fairly new to CyTOF data analysis and thus require help on making a key decision on batch normalization.

Since one of the main translational goals of the trial is the determination of the effects of the immunotherapy on T-cell exhaustion and activation markers, my 40-marker panel contains, among general leukocyte population markers (CD3, CD19, CD56, etc.), exhaustion and activation markers (TIM-3, CTLA-4, OX40, etc.), which I had successfully titrated on lymphoprepped PBMCs stimulated with IL-2 and PHA-P for 48h (example image below, S – stim, C – ctrl.) and have frozen leftovers of.


Since I have 59 Lyse/Fixed clinical samples to analyze, I will, of course, barcode them in batches using palladium. Along with using a pre-aliquoted and frozen master-mix of antibodies, removing a lot of experimental variability, but since multiple barcode batches are made, the batch effect needs to be accounted for too.

For this, I was recommended and looked into CytoNorm by Sofie van Gassen, et al. ( I have also looked into CyTOFBatchAdjust by Ronald Schuyler, et al. (, however their method seems to involve a lot of manual work, comparatively, and does indeed state that quantile-based normalization (a.k.a. CytoNorm) produces the most effective batch correction, with their one argument against it being that “single-channel QN can introduce artifacts when viewed in two-dimensional plots”. This is why I would prefer to invest my time looking into CytoNorm, and after all of my research into it, I still have a few questions I can’t seem to find an answer anywhere to.

Some of the questions are very basic and could be answered by tinkering with the algorithm on dummy samples. However, this would require spending time on familiarization with the algorithm, which I would like to avoid by asking for answers from those with experience using CytoNorm, in case an algorithm more applicable to my experiment is suggested.

• My main problem concerns these requirements by CytoNorm: “It is also important that the reference (anchor and validation) samples span the full expression range of the samples of interest and consist of cell types that are similar to the ones in the samples of interest.”.
• The clinical samples were taken both before and during the cancer immunotherapy, potentially allowing populations strongly expressing exhaustion and activation markers, which are not present in healthy donor blood, to form/enlarge. However, since these are very small and precious frozen clinical samples, I cannot “pre-analyze” them to determine the intensity range of these signals and thus have to use a substitute in my CytoNorm anchor and validation samples in order to satisfy the previously stated signal range cell type conditions.
• My thought was to use control/validation samples consisting of a ratio (A:B) of [A: a mix of healthy donor total leukocytes] and [B: the aforementioned leftover PHA-stimulated PBMCs], since the healthy donor blood would contain all of the cell types possibly present in the clinical samples while not satisfying the signal range condition, and the stimulated PBMCs would contain high enough signal, but do not contain granulocytes or enough myeloid cells to satisfy the cell type condition.
• The main issue in my mind is not understanding consequences of the spline-based normalization on the clinical samples that may not contain enough exhausted/activated cells. For example, if a clinical sample theoretically contains no cells with a high CTLA-4 signal, while the anchor/validation samples contain either 1%, 5% or 10% of these cells that got their distribution shifted during normalization, will CytoNorm “stretch” the signal distribution in this non-CTLA-4-expressing clinical sample to a false level of positivity/negativity? A crude drawing of a false-positive stretch is provided (5% of cells are activated):


1. Also, would the algorithm create “exhausted / activated” cell clusters, but then not be able to apply them to the non-exhausted / activated samples?
2. Am I understanding how CytoNorm works correctly?
3. Should I use a certain ratio of healthy donor / stimmed leukocytes in the anchor / validation samples? Or does the ratio not matter as long as all of the cell populations are present and the signal range encompasses everything well?
4. Should I use 4 control samples in each batch? One anchor and one validation each of a healthy donor sample and a stimulated PBMC sample?
5. Does another batch correction algorithm fit my experiment much better?

6. What is the purpose of including a validation sample? From my understanding, its purpose is to validate only the effectiveness of CytoNorm in mitigating the batch effects.
7. Should a validation sample always be included along with the anchor? Even though I would love to run a batch of 19 samples I have from the same facility, my take on this would be – yes, since it provides objective proof of the success of the batch correction.
8. What should the validation sample consist of, compared to the anchor sample? Should it have the same composition as the anchor sample, just from another donor(s)?
9. In the original CytoNorm publication, it is stated – when performing the primary FlowSOM clustering for training, a downsampling is applied to limit run time. – I am looking to explore the size of some rare cell populations within total leukocytes (e.g. CD141+ myeloid dendritic cells), and for this I will acquire a large number of cell events. My concern is that this downsampling step will not capture enough of these rare cells to form their own distinct clusters for normalizing the markers I have chosen for them (e.g. CD141). Is downsampling mandatory or can the entire anchor dataset be run, since run time is not a limiting issue for me?

Thank you for your help!
- Luka, University of Bergen, Norway

Image links:
PHA-Stim Titration Example:
Crude CytoNorm Stretch Drawing: