Skip to content
Prev 15403 / 21307 Next

[Bioc-devel] MultiAssayExperiment silently converting RangedSummarizedExperiments into SummarizedExperiments.

Hello,

I am using MultiAssayExperiment as a base class in the CAGEr package.

In Bioconductor 3.10, CAGEr is broken because updates of
RangeSummarizedExperiment experiments trigger their silent conversion
to SummarizedExperiment objects (basically discarding the ranges).  This 
only happens when there is another experiment slot that contains a plain 
SummarizedExperiment.

Here is a toy example to reproduce the issue:

```{r}
library("MultiAssayExperiment")
(DF       <- DataFrame(sample1=c(1,2), sample2=c(1,3)))
(rRanges  <- GPos("chr1", 1:2, "+"))
(cData    <- DataFrame(type=c("control", "treatment"), row.names = 
c("sample1", "sample2")))
(rSE      <- SummarizedExperiment(SimpleList(DF), rowRanges = rRanges, 
colData = cData))
(SE       <- SummarizedExperiment(SimpleList(DF), colData = cData))
(m        <- MultiAssayExperiment(ExperimentList(exp1=rSE)))
(m[[1]]   <- m[[1]])
m # No change
(m        <- c(m, exp2=SE))
(m[[1]]   <- m[[1]])
m # RangedSummarizedExperiment replaced with SummarizedExperiment
sessionInfo()
```

Am I misusing the MultiAssayExperiment objects, or is this a bug ?

Have a nice day,

Charles