Не могу осмотреть S4 объект после модификации - PullRequest
0 голосов
/ 07 февраля 2020

У меня проблемы с моим объектом S4 res после добавления к нему списка значений. Объект был создан с помощью пакета DESeq2. Объект был создан с помощью:

dds <- DESeqDataSetFromMatrix(countData = count.matrix,
                              colData = coldata,
                              design = ~ Condition)
dds <- DESeq(dds, test = "Wald")
res <- results(dds)

Я сделал следующее:

x <- qvalue(res@listData[["pvalue"]])    #calc qvalues based on pvalues from S4 object 'res'
res@listData[["qval"]] <- x[["qvalues"]] #append qvalues from x to 'res' as new col named "qval"

Теперь, когда я пытаюсь осмотреть объект с помощью head(), я получаю следующую ошибку:

> head(res)
Error in `rownames<-`(`*tmp*`, value = names(x)) : 
  invalid rownames length

Забавно, что с помощью View() я могу осмотреть объект S4 в RStudio и увидеть, что все прошло нормально, добавив значения q. кто-нибудь знает, почему это произошло? Есть ли способ избежать этого?

1 Ответ

1 голос
/ 07 февраля 2020

Для того, чтобы вы получили qvalues ​​.. вы можете сделать это в первую очередь:

library(qvalue)
library(DESeq2)

dds = makeExampleDESeqDataSet()
dds = DESeq(dds)
res = results(dds)
res$qvalue = qvalue(res$pvalue)$qvalue

Я расскажу, почему произошла ошибка .. вам нужно посмотреть, как она построена.

...