Error in makeOrganismDbFromBiomart call for Heliconius melpomene (Ensembl Metazoa)
1
0
Entering edit mode
@thomas-sandmann-6817
Last seen 8 months ago
USA

Dear Bioconductor team,

I tried to generate an OrganismDb object for a (butterfly) genome from Ensembl Metazoa. Unfortunately, the following code returned an error (see reproducible example and sessionInfo  output below):

Error in ah[[AHID]] : 'i' must be length 1

Any advice on how to proceed?

As always, thanks a lot for providing awesome tools to the community!

Thomas

​> library(OrganismDbi)
> dataset = "hmelpomene_eg_gene"
> mart.name = "metazoa_mart"
> host = "metazoa.ensembl.org"
> db <- makeOrganismDbFromBiomart(biomart = mart.name, host = host, dataset = dataset)

Download and preprocess the 'transcripts' data frame ... OK
Download and preprocess the 'splicings' data frame ... OK
Download and preprocess the 'genes' data frame ... OK
Prepare the 'metadata' data frame ... OK
Make the TxDb object ... OK
snapshotDate(): 2016-05-12
snapshotDate(): 2016-05-12
Error in ah[[AHID]] : 'i' must be length 1
In addition: Warning message:
In .normarg_makeTxDb_chrominfo(chrominfo, transcripts$tx_chrom,  :
  chromosome lengths and circularity flags are not available for this TxDb object
> sessionInfo()
R version 3.3.0 (2016-05-03)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X 10.11.4 (El Capitan)

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats4    parallel  stats     graphics  grDevices datasets  utils     methods   base     

other attached packages:
 [1] OrganismDbi_1.14.0     GenomicFeatures_1.24.1 GenomicRanges_1.24.0  
 [4] GenomeInfoDb_1.8.1     AnnotationDbi_1.34.1   IRanges_2.6.0         
 [7] S4Vectors_0.10.0       Biobase_2.32.0         BiocGenerics_0.18.0   
[10] BiocInstaller_1.22.2   devtools_1.11.1       

loaded via a namespace (and not attached):
 [1] Rcpp_0.12.4.5                 XVector_0.12.0                AnnotationHub_2.4.1          
 [4] bitops_1.0-6                  tools_3.3.0                   zlibbioc_1.18.0              
 [7] biomaRt_2.28.0                digest_0.6.9                  RSQLite_1.0.0                
[10] memoise_1.0.0                 graph_1.50.0                  shiny_0.13.2                 
[13] DBI_0.4-1                     curl_0.9.7                    rtracklayer_1.32.0           
[16] withr_1.0.1                   httr_1.1.0                    Biostrings_2.40.0            
[19] R6_2.1.2                      XML_3.98-1.4                  RBGL_1.48.0                  
[22] BiocParallel_1.6.1            Rsamtools_1.24.0              htmltools_0.3.5              
[25] GenomicAlignments_1.8.0       SummarizedExperiment_1.2.1    mime_0.4                     
[28] interactiveDisplayBase_1.10.1 xtable_1.8-2                  httpuv_1.3.3                 
[31] RCurl_1.95-4.8   
OrganismDbi • 1.0k views
ADD COMMENT
0
Entering edit mode
@valerie-obenchain-4275
Last seen 2.3 years ago
United States

Hi Thomas,

makeOrganismDbFromBiomart() calls makeOrganismDbFromTxDb() which either needs an OrgDb package supplied as an argument or looks for one in the repo or AnnotationHub. The problem is that neither our repo or AnnotationHub has an OrgDb for this organism. I've added a check for this and now you'll see this error message:

> db <- makeOrganismDbFromBiomart(biomart = mart.name, host = host, dataset = dataset)
Download and preprocess the 'transcripts' data frame ... OK
Download and preprocess the 'splicings' data frame ... OK
Download and preprocess the 'genes' data frame ... OK
Prepare the 'metadata' data frame ... OK
Make the TxDb object ... OK
snapshotDate(): 2016-05-12
snapshotDate(): 2016-05-12
Error in OrganismDbi:::.taxIdToOrgDb(taxId) : 
  no OrgDb package found for taxid 34740

It looks like only makeOrganismDbFromTxDb() allows the user to supply their own OrgDb package. In that case you'd need to make both the TxDb and OrgDb. In OrganismDbi 1.15.1 I've added an 'orgdb' argument to makeOrganismDbFromBiomart() so you just need to make the OrgDb which can be done with one of the makeOrgPackage* functions in AnnotationForge.

Not an ideal solution but hopefully somewhat helpful.

 

Valerie

ADD COMMENT

Login before adding your answer.

Traffic: 840 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