This is a test version of Biostars. For the public version, visit https://www.biostars.org.
DESeq2 results function not working

I'm trying to use DESeq2 to do differential expression analysis. I have a simple design where there are two groups. Running the function seems to work fine:

design <- ~fhg_status
dds <- DESeqDataSetFromMatrix(countData=countData, 
                            colData=metadata, 
                            design=des, tidy = TRUE)
dds <- DESeq(dds)

No errors or warnings or anything:

estimating dispersions
gene-wise dispersion estimates
mean-dispersion relationship
final dispersion estimates
fitting model and testing
-- replacing outliers and refitting for 3948 genes
-- DESeq argument 'minReplicatesForReplace' = 7 
-- original counts are preserved in counts(dds)
estimating dispersions
fitting model and testing

Yet when I try to get results,

res <- results(dds)

I get the following error:

Error in checkSlotAssignment(object, name, value) : 
  assignment of an object of class “DFrame” is not valid for slot ‘elementMetadata’ in an object of class “DESeqResults”; is(value,     "DataTable_OR_NULL") is not TRUE

I then tried in on the sample data set:

dds <- makeExampleDESeqDataSet()
dds <- DESeq(dds)
res <- results(dds)

And I get the same error. I've updated all my packages, uninstalled and reinstalled DESeq2, restarted RStudio, nothing fixes it.

differential expression bioconductor r

1 answer

This is usually due to packages from different Bioconductor versions getting mixed. Run BiocManager::valid() to determine which might be causing an issue and fix it.

Log in to answer this question.