Question: ASE using DESeq2
0
16 months ago by
c.martinezruiz0 wrote:

Hello!

I am using DESeq2 to analyse allele specifc expression in two different assays. I one of the assays I have six samples with no particular treatment, in the other assay I have 'colony' and 'body part' as blocking factors. Both assays have been analysed separately.

My approach up until now has been to perform the analysis normalising only by either sample, or by the blocking factors, avoiding normalisation by allele, as I assumed (and it actually does) this would get rid of most ASE differences.

Because allele expression comes from the same sample, I figured that normalisation by allele here is not only not needed, but also a bad idea. I know a similar issue has been addressed in Using edgeR or DESeq2 to analyze allele-specific expression?. And there the recommendation was to either not normalise at all (normalisation == 1) or to keep allele normalisation as other biases may still exist (e.g. mapping bias). I know for a fact, however, that mapping bias should not be a problem in my case.

My case is slightly different in that I have used normalisation factors, but I have forced DESeq2 to not use allele as a variable to normalise, like so:

dds_sample <- DESeqDataSetFromMatrix(countData = data, colData = colData, design = ~sample)
sample_fs <- sizeFactors(estimateSizeFactors(dds_sample))

dds_allele <- DESeqDataSetFromMatrix(countData = data, colData = colData, design = ~sample + allele)

sizeFactors(dds_allele) <- sample_fs
dds_allele <- estimateDispersions(dds_allele)
dds_allele <- nbinomWaldTest(dds_allele)

To me this makes sense, but I was wondering whether there is a fundamental error that I might have missed here and whether or not this would be good practice.

Thank you!

modified 16 months ago by Simon Anders3.6k • written 16 months ago by c.martinezruiz0

I'll come back to reply later, but in the meantime, here's a tutorial i wrote a while back:

http://rpubs.com/mikelove/ase

1

Yeah, I'd recommend to follow the tutorial and come back if you have additional questions.

1
16 months ago by
Simon Anders3.6k
Zentrum für Molekularbiologie, Universität Heidelberg
Simon Anders3.6k wrote:

The estimateSizeFactor function does not use the design information. You will get the same size factors, no matter what design formula you specify. So, your code does not do what you think it does.

I could try to explain now how to do it correctly, but I guess Mike's write-up does tha job, so I let you read this first. Just come back if you still have questions afterwards