Not sure why the colData default is DataFrame(). Seems like this has
been the default since the birth of the SummarizedExperiment class back
in 2010 (FWIW the class was born in the GenomicRanges package). Anyways,
it should probably be NULL, like for rowData. Can you please open an
issue on GitHub for this? Thanks
H.
On 5/12/23 07:00, Dario Strbenac via Bioc-devel wrote:
Good day,
The default value of colData is DataFrame(). Not specifying an informative
colData is fine.
countsMini <- matrix(rpois(100, 100), ncol = 10)
colnames(countsMini) <- paste("Cell", 1:10)
rownames(countsMini) <- paste("Gene", 1:10)
SummarizedExperiment(assays = list(counts = countsMini)) # Creates the object
successfully.
But, explicitly specifying an empty DataFrame triggers an error. I don't
understand why it is not equivalent to the constructor's default.
SummarizedExperiment(assays = list(counts = countsMini), colData = DataFrame())
Error in `rownames<-`(`*tmp*`, value = .get_colnames_from_first_assay(assays)) :
invalid rownames length
What is the subtle difference? It also seems like there could be a clearer
error message emitted if this is caught in the right place.
--------------------------------------
Dario Strbenac
University of Sydney
Camperdown NSW 2050
Australia
_______________________________________________
Bioc-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel
--
Hervé Pagès
Bioconductor Core Team
hpages.on.git...@gmail.com
_______________________________________________
Bioc-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel