[R] is gzcon w/ urls not implemented or used differently on linux?
Tyler Backman
tbackman at ucr.edu
Fri Mar 11 23:42:12 CET 2011
I wrote some code which reads a gzipped text file directly from the web with gzcon(url()) and it works perfectly on OSX, but I cannot get it to work on linux at all, trying several different R versions and linux distributions. Any ideas?
Here's an example of my code:
z <- gzcon(url("ftp://ftp-private.ncbi.nlm.nih.gov/pubchem/.fetch/8897497837079742771.sdf.gz"))
sdf <- readLines(z)
close(z)
On linux it produces the following error:
Error in readLines(z) : cannot open the connection
The non-gzipped version works flawlessly on linux:
con <- url("http://chemmine.ucr.edu/ChemMineToolsV2/static/example_db.sdf")
sdf <- readLines(con)
close(con)
As an analog, gzcon does work with non-url files on linux:
system("wget ftp://ftp-private.ncbi.nlm.nih.gov/pubchem/.fetch/8897497837079742771.sdf.gz")
z <- gzcon(file("8897497837079742771.sdf.gz", "rb"))
sdf <- readLines(z)
close(z)
But this doesn't help me, because I need my code to be cross platform!
> sessionInfo()
R version 2.12.2 (2011-02-25)
Platform: x86_64-unknown-linux-gnu (64-bit)
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=C 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] stats graphics grDevices utils datasets methods base
> system("uname -a")
Linux biocluster 2.6.26-2-openvz-amd64 #1 SMP Tue Jan 25 06:04:33 UTC 2011 x86_64 GNU/Linux
Thank you,
Tyler William H Backman
Cheminformatics Programmer
Department of Botany and Plant Sciences
E-mail: tyler.backman at ucr.edu
1207E Genomics Building
University of California
Riverside, CA 92521
More information about the R-help
mailing list