Question: DESeq2 results interpretation
gravatar for anna
6 months ago by
anna0 wrote:

Here's an example of my results of DESeq2:

log2 fold change (MLE): condition 9dbi vs 14dbi 
Wald test p-value: condition 9dbi vs 14dbi 
DataFrame with 6 rows and 6 columns
           baseMean     log2FoldChange             lfcSE               stat
          <numeric>          <numeric>         <numeric>          <numeric>
1                 0                 NA                NA                 NA
2 0.177458893852153   -1.4481575955927  4.97102272203974 -0.291319850374468
3  1446.39389509809 -0.692819629443894 0.475910039694388  -1.45577855404941
4                 0                 NA                NA                 NA
5                 0                 NA                NA                 NA
6  15.2981322543349  -0.96975860635648  2.82291217836281 -0.343531270221415
             pvalue              padj
          <numeric>         <numeric>
1                NA                NA
2 0.770806707111275                NA
3 0.145453846128274 0.661200360612138
4                NA                NA
5                NA                NA
6 0.731198820302977 0.986794113259138

But.. how can i see the expression level? and which result shows if a gene is differentially expressed or not?

Also, how can i add the row names containing the name of the genes? Here's my command line:

> dds <- DESeqDataSetFromMatrix(countData=countsTable, colData = colData, design=~condition)
> dds$condition <- relevel(dds$condition, ref = "14dbi")
> colData(dds)$condition <- relevel(colData(dds)$condition, "14dbi")
results deseq2 interpretation • 604 views
ADD COMMENTlink modified 6 months ago by Kevin Blighe39k • written 6 months ago by anna0
gravatar for Kevin Blighe
6 months ago by
Kevin Blighe39k
Republic of Ireland
Kevin Blighe39k wrote:

The negative binomial-distributed normalised counts on which the statistical inferences are made can be accessed via:

counts(dds, normalized=TRUE)

You may also have access to the transformed counts, on which statistical inferences are not made but which can be used for downstream functions, like plotting expression levels in heatmaps or box-and-whisker plots, for example.

vsd <- vst(dds, blind=FALSE) # variance-stabilised transformation

rld <- rlog(dds, blind=FALSE) # reguarised log transformation

NB - with blind=FALSE, the normalised counts are transformed and adjusted based on your design formula; with blind=TRUE, the normalised counts are transformed as is


Typically, padj (adjusted P value) < 0.05 is a good starting point for determining which genes are differentially expressed. For example:

subset(res, padj<0.05)


Gene names should be carried all the way through from your countsTable object. Double-check that you have rownames set for countsTable.


ADD COMMENTlink modified 6 months ago • written 6 months ago by Kevin Blighe39k
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: 1866 users visited in the last hour