<p>Use <code>removeBatchEffects</code> from <code>limma</code>. The input counts should be on log scale, so <code>vst</code> and <code>rlog</code> are ok. The <code>covariate</code> argument can take the surrogate matrix from svaseq.</p>
<p><a href="https://rdrr.io/bioc/limma/man/removeBatchEffect.html" rel="nofollow noreferrer">https://rdrr.io/bioc/limma/man/removeBatchEffect.html</a></p>

CC BY-SA 4.0
2022-06-16T18:07:58.933Z
2022-06-16T18:07:58.933Z
Corinthus Kackus
<p>I understand GSEA/GSVA can take microarray-like expression matrix such as the output of voom() or vst(). However, I have a question on how we can also use svaseq() variables, correct the output from voom() or vst(), and apply GSVA on it.</p>
<p>I assume this is possible since I have read papers showing PCA after correction by SVA (such as this <a href="https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0061088" rel="nofollow noreferrer">one</a> and this <a href="https://www.pnas.org/doi/10.1073/pnas.1814397115" rel="nofollow noreferrer">one</a> in their supplementary figure), but my statistical and coding knowledge does not allow me to recreate what they do. Is there a known pipeline that can do this</p>
<p>Edit: to clarify, I would like to generate a normalised matrix (e.g. rlog, or out put of voom from limma, or vst from DESeq2) that is adjusted for batch effect. ComBat, for example, can provide what I need. However, since I am doing my DESeq2 DGE analysis with svaseq(), I want to adjust it with svaseq variables. I am wondering if there are pipelines that can use svaseq vairables (or any varaibles) and adjust the value in the normalised expression matrix.</p>

<r><rna-seq><batch-effects><gsea><sva>
Can I Incorporate svaseq() into GSEA/GSVA analysis?
# Can I Incorporate svaseq() into GSEA/GSVA analysis?

(Asked by: username_0 on 2022-06-16)

I understand GSEA/GSVA can take microarray-like expression matrix such as the output of voom() or vst(). However, I have a question on how we can also use svaseq() variables, correct the output from voom() or vst(), and apply GSVA on it.

I assume this is possible since I have read papers showing PCA after correction by SVA (such as this [one](https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0061088) and this [one](https://www.pnas.org/doi/10.1073/pnas.1814397115) in their supplementary figure), but my statistical and coding knowledge does not allow me to recreate what they do. Is there a known pipeline that can do this

Edit: to clarify, I would like to generate a normalised matrix (e.g. rlog, or out put of voom from limma, or vst from DESeq2) that is adjusted for batch effect. ComBat, for example, can provide what I need. However, since I am doing my DESeq2 DGE analysis with svaseq(), I want to adjust it with svaseq variables. I am wondering if there are pipelines that can use svaseq vairables (or any varaibles) and adjust the value in the normalised expression matrix.

**Tags:** r, rna-seq, batch-effects, gsea, sva

---

## 1 answers

### Answer by username_1 on 2022-06-16. Score: 1 | Accepted answer

Use `removeBatchEffects` from `limma`. The input counts should be on log scale, so `vst` and `rlog` are ok. The `covariate` argument can take the surrogate matrix from svaseq.

<https://rdrr.io/bioc/limma/man/removeBatchEffect.html>


---

