Question: How to correctly correct for batch effects
gravatar for Sebastian Hesse
19 months ago by
Germany / Munich / Dr. von Hauner Children's Hospital
Sebastian Hesse180 wrote:

Working with a proteome dataset I would like to check and correct for batch effects. For batch effect detection I am using PVCA, for batch effect correction LIMMAS removeBatchEffect. Data come from DIA proteome analysis, quantified using Biognosys Spectronaut 11, details can be found in our first paper about it. Quantitative data were log2 transformed before analysis and correction.

Using PVCA I get the following result for my uncorrected data: enter image description here

I have read that for batch correction to be valid, data must be well balanced. But what exactly does this mean?

  1. I compare proteomes of patients with different disease genotypes to healthy. I suspect that as I have a lot of (12) different genotypes including many unknowns I will need to use only disease vs no disease as the status to be protected? I have in total 70 healthy and 70 patients but using the different genotypes the patient group would be widely dispersed with many single ones and many unknowns (that definitely do not all have the very same genotype).
  2. Is it important that my factors to correct for are evenly distributed by themselves or also in combination if I want to correct for multiple? EG: My samples are well balanced for date processed and also for cell number (meaning I have in both cases roughly equal amounts of healthy and patient samples). But if I check for the distribution using date AND cell number the balance is quite off (with few combinations having no patients or no healthies). So is it required that both are balanced together or is it fine as long as each factor is balanced for itself?
  3. Is its fine to use extreme correction measures (eg date.processed, protease.inhibitor, cell number and age) for data that are used for visualisation and clustering while in LIMMA blocking only for date_processed (and protease inhibitor)? When blocking in LIMMA, is it important to again check for well balanced distribution, again of all factors in combination? (I suspect that yes and that I will need to decide for one factor to correct for and keep the rest as it is)

Thanks a lot for your suggestions!


limma pvca R removebatcheffect • 829 views
ADD COMMENTlink modified 8 months ago by Biostar ♦♦ 20 • written 19 months ago by Sebastian Hesse180

Disclaimer first: I've never used that package, so I may be missing something that's obvious to you.

  1. What is the comparison of interest? I.e. you say, you have healthy and sick patients, but I don't seem to see that category up in the figure?
  2. Could you perhaps post a biplot of PC1 vs. PC2, indicating some of the most strongly influencing conditions, e.g. health status, protease inhibitor etc.? You may want to check out Kevin's PCAtools, which will allow you to make all sorts of insightful figures.

Regarding some of your questions:

Generally, unless you have at least two samples per unique group, there's no point because you have no way of estimating the variability within the group. Limma can handle unbalanced design, though (but will balk if there's less than two in a specific group).

ADD REPLYlink written 19 months ago by Friederike6.2k

Actually limma does not require >= 2 two samples in each group. A specific group of size n=1 is no problem. limma requires at least two samples in at least one group, not at least two samples in all groups.

Batch correction is a different matter of course. Batches can't be confounded with the factors of interest.

ADD REPLYlink modified 8 months ago • written 8 months ago by Gordon Smyth1.9k
Please log in to add an answer.


Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 1252 users visited in the last hour