Search
Question: Error in makeTxDbFromBiomart for fungi_mart
0
gravatar for JohnTownsend
10 months ago by
JohnTownsend20
JohnTownsend20 wrote:

Hi,

The function makeTxDbFromBiomart doesn't seem to be working when I try to access the fungi mart. I try

myTxDb <- makeTxDbFromBiomart(biomart = "fungi_mart", dataset = "spombe_eg_gene", host="fungi.ensembl.org")

and get the following error:

Download and preprocess the 'transcripts' data frame ... No encoding supplied: defaulting to UTF-8.
OK
Download and preprocess the 'splicings' data frame ... No encoding supplied: defaulting to UTF-8.
OK
Download and preprocess the 'genes' data frame ... No encoding supplied: defaulting to UTF-8.
OK
Prepare the 'metadata' data frame ... Error in function (type, msg, asError = TRUE)  :
  Server denied you to change to the given directory

Is there a work around?

Here's the sessionInfo():

R version 3.4.3 (2017-11-30)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: OS X El Capitan 10.11.6

Matrix products: default
BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib

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

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

other attached packages:
[1] GenomicFeatures_1.30.0 AnnotationDbi_1.40.0   Biobase_2.38.0         GenomicRanges_1.30.1  
[5] GenomeInfoDb_1.14.0    IRanges_2.12.0         S4Vectors_0.16.0       BiocGenerics_0.24.0   

loaded via a namespace (and not attached):
 [1] Rcpp_0.12.14               pillar_1.1.0               compiler_3.4.3            
 [4] XVector_0.18.0             prettyunits_1.0.2          bitops_1.0-6              
 [7] tools_3.4.3                zlibbioc_1.24.0            progress_1.1.2            
[10] biomaRt_2.34.1             digest_0.6.14              bit_1.1-12                
[13] lattice_0.20-35            RSQLite_2.0                memoise_1.1.0             
[16] tibble_1.4.1               rlang_0.1.6                Matrix_1.2-12             
[19] DelayedArray_0.4.1         DBI_0.7                    curl_3.1                  
[22] GenomeInfoDbData_1.0.0     rtracklayer_1.38.2         stringr_1.2.0             
[25] httr_1.3.1                 Biostrings_2.46.0          grid_3.4.3                
[28] bit64_0.9-7                R6_2.2.2                   XML_3.98-1.9              
[31] RMySQL_0.10.13             BiocParallel_1.12.0        blob_1.1.0                
[34] magrittr_1.5               matrixStats_0.52.2         GenomicAlignments_1.14.1  
[37] Rsamtools_1.30.0           SummarizedExperiment_1.8.1 assertthat_0.2.0          
[40] stringi_1.1.6              RCurl_1.95-4.10 
ADD COMMENTlink modified 10 months ago • written 10 months ago by JohnTownsend20
3
gravatar for JohnTownsend
10 months ago by
JohnTownsend20
JohnTownsend20 wrote:

I found the answer myself after a bit of digging around in the code for makeTxDbFromBiomart. The name of the mart for fungi has recently changed from fungal_mart to fungi_mart. However, this has not been reflected in the code for an internal function of the GenomicFeatures package:

.get_EnsemblGenomes_kingdom_from_biomart <- function (biomart) {
  biomart <- tolower(biomart)
  if (substr(biomart, 1, 14) == "bacterial_mart")
    return("bacteria")
  if (substr(biomart, 1, 11) == "fungal_mart")
    return("fungi")
  if (substr(biomart, 1, 12) == "metazoa_mart")
    return("metazoa")
  if (substr(biomart, 1, 11) == "plants_mart")
    return("plants")
  if (substr(biomart, 1, 12) == "protist_mart")
    return("protists")
  NA
}

Because of this, the makeTxDbFromBiomart function cannot correctly identify the kingdom, and thus cannot specify the host address to download the metadata, and the function fails.

To fix this, I downloaded the source package: http://bioconductor.org/packages/release/bioc/src/contrib/GenomicFeatures_1.30.0.tar.gz

I unzipped the package from the command line using tar -xvzf GenomicFeatures_1.30.0.tar.gz and the edited line 140 of the file R/makeTxDbFromBiomart.R to correctly specify fungi_mart:

if (substr(biomart, 1, 10) == "fungi_mart")

I then re-zipped the package and installed using:

tar -czvf GenomicFeatures.tar.gz GenomicFeatures

R CMD INSTALL GenomicFeatures.tar.gz

which gives me a successful TxDb download from Biomart.

ADD COMMENTlink modified 10 months ago • written 10 months ago by JohnTownsend20
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.2.0
Traffic: 272 users visited in the last hour