[R] Cannot read or write to file in Linux Ubuntu

Jeff Newmiller jdnewmil at dcn.davis.CA.us
Thu May 3 19:53:25 CEST 2012


"I like the idea of staying with absolute paths."

Before you write too much R code that builds in absolute paths, please consider how difficult it will be to adjust all of those paths if you need to run on a different computer or you need to reorganize your overall directory structure. If you keep related R files in the same project directory, you can collapse all of those paths down to short relative paths, and do one setwd at the beginning, or learn to manually set your base working directory as a matter of habit before each working session. (This habit is useful in more areas than just R programming.)
---------------------------------------------------------------------------
Jeff Newmiller                        The     .....       .....  Go Live...
DCN:<jdnewmil at dcn.davis.ca.us>        Basics: ##.#.       ##.#.  Live Go...
                                      Live:   OO#.. Dead: OO#..  Playing
Research Engineer (Solar/Batteries            O.O#.       #.O#.  with
/Software/Embedded Controllers)               .OO#.       .OO#.  rocks...1k
--------------------------------------------------------------------------- 
Sent from my phone. Please excuse my brevity.

John Kane <jrkrideau at inbox.com> wrote:

>Thanks Sarah,
>
>I suspected something like that but am still gropping around in Linux. 
>I vaguely remember how to cd to someplace.  Shades of DOS 3.2! Of was
>that Unixor both!
>
>Also I think I was trying to be a bit too smart-alecky in where I was
>placing my data folder so I moved it to my home folder to simplify
>figuring out the path. Still thinking in Windows terms.
>
>After a bit of trial and error:
>
>jjohn at john-K53U:~$ cd /home/john/rdata
>john at john-K53U:~/rdata$ dir
>tti.csv
>john at john-K53U:~/rdata$ pwd
>/home/john/rdata
>
>so 
>mydata <- read.csv("/home/john/rdata/tti.csv", header = TRUE)
> works just fine.  I like the idea of staying with absolute paths.
>
>I am most appreciative.
>
>John Kane
>Kingston ON Canada
>
>
>> -----Original Message-----
>> From: sarah.goslee at gmail.com
>> Sent: Thu, 3 May 2012 12:29:14 -0400
>> To: jrkrideau at inbox.com
>> Subject: Re: [R] Cannot read or write to file in Linux Ubuntu
>> 
>> Hi John,
>> 
>> You're probably messing up the path, just as you suspect.
>> 
>> If you use a relative path, like you are doing, then R looks for that
>> location starting at R's current working directory, visible with
>> getwd(). For linux, that's the location at which you started R if you
>> started it from a terminal.
>> 
>> The safest solution is to use an absolute path, which will likely be
>> something resembling "/home/john/DATA/... etc" - note that it will
>> always start with a / and go from there.
>> 
>> If you know how to start a terminal window and cd to where your file
>> is, pwd at the command prompt will give you the absolute path to that
>> location, which is what you should be using until you get more
>> comfortable with the file system.
>> 
>> The error message means that R can't find the directory you're
>telling
>> it to use.
>> 
>> Sarah
>> 
>> On Thu, May 3, 2012 at 12:21 PM, John Kane <jrkrideau at inbox.com>
>wrote:
>>> I am the proud owner of a new laptop since my old one died the other
>>> day.
>>> Currently I have a dual-boot Windows 7 Home and Ubuntu 12.04 .  I'll
>>> leave the Windows problems for another post.
>>> 
>>>  I know practically nothing about Linux so I am probably doing
>something
>>> stupid but ... at the moment I cannot seem read or write  files in
>>> Ubuntu.   I am not having any problem saving other documents to the
>hard
>>> drive and R , from my few simple tests, seems to be working okay
>>> otherwise.
>>> 
>>> At the moment I am trying :
>>> 
>>> mydata <- read.csv("DATA/media/DATA/rdata/tt1.csv",  header = TRUE)
>>>  or
>>> mydata <- read.csv("DATA/rdata/tt1.csv",  header = TRUE)
>>> 
>>> 
>>> where tt1.csv is a text file on what, from my reading of the path
>listed
>>> in gedit is
>>> DATA/media/DATA/rdata
>>> 
>>> The csv data is simply:
>>> aa, bb
>>> 2, 3
>>> 4, 5
>>> 
>>> What happens:
>>>
>-------------------------------------------------------------------------------
>>> 1> mydata <- read.csv("DATA/rdata/tt1.csv",  header = TRUE)
>>> Error in file(file, "rt") : cannot open the connection
>>> In addition: Warning message:
>>> In file(file, "rt") :
>>>  cannot open file 'DATA/rdata/tt1.csv': No such file or directory
>>> 
>>> Am I totally screwing up the path?  Or doing something else equally
>>> stupid?
>>> 
>>> BTW I realise that 2.15 is out but Ubuntu as of yesterday did not
>have
>>> it in the repositories and I have yet to figure out how to install
>it
>>> from a CRAN site.
>>> 
>>> 1> sessionInfo()
>>> R version 2.14.1 (2011-12-22)
>>> Platform: i686-pc-linux-gnu (32-bit)
>>> 
>>> locale:
>>>  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C
>>>  [3] LC_TIME=en_CA.UTF-8        LC_COLLATE=en_US.UTF-8
>>>  [5] LC_MONETARY=en_CA.UTF-8    LC_MESSAGES=en_US.UTF-8
>>>  [7] LC_PAPER=C                 LC_NAME=C
>>>  [9] LC_ADDRESS=C               LC_TELEPHONE=C
>>> [11] LC_MEASUREMENT=en_CA.UTF-8 LC_IDENTIFICATION=C
>>> 
>>> attached base packages:
>>> [1] stats     graphics  grDevices utils     datasets  methods   base
>> 
>> --
>> Sarah Goslee
>> http://www.functionaldiversity.org
>
>____________________________________________________________
>FREE 3D EARTH SCREENSAVER - Watch the Earth right on your desktop!
>
>______________________________________________
>R-help at r-project.org mailing list
>https://stat.ethz.ch/mailman/listinfo/r-help
>PLEASE do read the posting guide
>http://www.R-project.org/posting-guide.html
>and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list