Extending SummarizedExperiment without rowRanges argument
1
0
Entering edit mode
xuren2120 • 0
@xuren2120-15845
Last seen 3.3 years ago

Hi all,

 

I have some trouble with extending SummarizedExperiment without rowRanges argument. I'm trying to create a class that inherits from SummarizedExperiment. However, when constructing the class, there is an error which says 

Error in validObject(.Object) : invalid class “myTestClass” object: 
  length of 'rowRanges' (0) must equal nb of rows in 'x' (200)

Here is the code sample:

library(SummarizedExperiment)
###  set class and constructor
setClass("myTestClass",
         contains="RangedSummarizedExperiment",
         representation=representation(
             design = "ANY"
         )
)

myTestClass <- function(countData, colData, design, ...){
    se = SummarizedExperiment(assays = list(counts = countData),
                              colData = colData, ...)
    return(new("myTestClass", se, design = design))
}

##  create an example count and colData
nrows = 200
ncols = 10
counts <- matrix(rnbinom(nrows * ncols, 10, 0.3), nrows)
colData = DataFrame(condition=rep(c("case", "control"), 5))

##  construct my class
myTestClass(countData = counts, colData = colData, design = ~1)
Error in validObject(.Object) : invalid class “myTestClass” object: 
length of 'rowRanges' (0) must equal nb of rows in 'x' (200)

 

I couldn't figure out where is the problem. Could anyone please help check? Is it possible that my class inherit from SummarizedExperiment without rowRanges argument? Thank you!

Xu Ren

 

> sessionInfo()

R version 3.4.0 (2017-04-21)

Platform: x86_64-redhat-linux-gnu (64-bit)

Running under: Red Hat Enterprise Linux


Matrix products: default

BLAS/LAPACK: /usr/lib64/R/lib/libRblas.so


locale:

[1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              

[3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    

[5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   

[7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 

[9] LC_ADDRESS=C               LC_TELEPHONE=C            

[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       


attached base packages:

[1] parallel  stats4    stats     graphics  grDevices utils     datasets

[8] methods   base     


other attached packages:

[1] SummarizedExperiment_1.6.5 DelayedArray_0.2.7        

[3] matrixStats_0.54.0         Biobase_2.36.2            

[5] GenomicRanges_1.28.6       GenomeInfoDb_1.12.3       

[7] IRanges_2.10.5             S4Vectors_0.14.7          

[9] BiocGenerics_0.22.1       


loaded via a namespace (and not attached):

[1] lattice_0.20-35         bitops_1.0-6            grid_3.4.0             

[4] zlibbioc_1.22.0         XVector_0.16.0          Matrix_1.2-14          

[7] tools_3.4.0             RCurl_1.95-4.11         compiler_3.4.0         

[10] GenomeInfoDbData_0.99.0
summarizedexperiment rangedsummarizedexperiment • 570 views
ADD COMMENT
1
Entering edit mode
@martin-morgan-1513
Last seen 2 days ago
United States

Try extending the SummarizedExperiment rather than RangedSummarizedExperiment class

setClass("myTestClass",
         contains="SummarizedExperiment",
         representation=representation(
             design = "ANY"
         )
)

Questions about package development should be directed to the bioc-devel mailing list.

ADD COMMENT

Login before adding your answer.

Traffic: 159 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6