LRT test with or without betaPrior
Entering edit mode
Last seen 6.2 years ago


My experimental design is as follows: 1 factor with 4 levels and want to consider batch effects. My approach is to considerate the design as ( full= ~ Batch + Condition,  reduced = ~ Batch).

My question now is that I'm not quite sure if betaPrior for LRT test should be TRUE or FALSE. If I do not include the betaPrior in the function

dds1 <- DESeq(dds, test="LRT", full= ~ Batch + Condition,  reduced = ~ Batch )

the MA-plot appears with unshrunken results.

plotMA(dds1, main= "DESeq2", ylim = c(-2,2))

However if I do apply betaPrior TRUE:

dds2 <- DESeq(dds, test="LRT", betaPrior = TRUE, full= ~ Batch + Condition,  reduced = ~ Batch )

then the MA plot appears as the shrunken data

plotMA(dds2, main= "DESeq2", ylim = c(-2,2))

Using the help I get this: "whether or not to put a zero-mean normal prior on the non-intercept coefficients While the beta prior is used typically, for the Wald test, it can also be specified for the likelihood ratio test. For more details on the calculation, see nbinomWaldTest".

So it seems that for LRT the betaPrior is not set as Default. Could you please clarify why betaPrior is only used in the Wald test and when (if ever) should the betaPrior be used for LRT?


deseq2 LRT betaprior • 1.2k views
Entering edit mode
Last seen 1 day ago
United States

There are some support site posts about this, but I can restate, because it's not that simple to search the archives.

I think it's best to not use the betaPrior with LRT.

My reasoning is that, the null distribution of the Wald statistic using a beta prior still follows the Normal that it is compared against to produce p-values, but the null distribution of the LRT test statistic using the beta prior does not follow the chi square distribution (it has too few large values, i.e. too conservative). Since it's desirably to have the test use up its Type I error budget, but not exceed, it's good to have the null distribution follow the theoretical. I've considered removing the betaPrior option for LRT, but haven't gotten around to it / haven't explored if it has a detrimental effect on power. (It should be conservative with respect to Type I error though.)


Login before adding your answer.

Traffic: 475 users visited in the last hour
Help About
Access RSS

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6