[R] Antwort: Re: Re: sink(): Cannot open file

Duncan Murdoch murdoch.duncan at gmail.com
Tue May 10 19:04:26 CEST 2016


On 10/05/2016 11:15 AM, John Sorkin wrote:
> George,
> I do not know what operating system you are working with, but when I use sink() under windows, I need to specify a valid path which I don't see in your code. I might, for example specify:
>
> sink("c:\myfile.txt")

Note that the backslash should be doubled (so it isn't interpreted as an 
escape for the "m" that follows it), or replaced with a forward slash.

Duncan Murdoch

>   R code goes here
> sink()
>
> with the expectation that I would create a file myfile.txt that would contain the output of my R program.
>   
> John
>
>
> John David Sorkin M.D., Ph.D.
> Professor of Medicine
> Chief, Biostatistics and Informatics
> University of Maryland School of Medicine Division of Gerontology and Geriatric Medicine
> Baltimore VA Medical Center
> 10 North Greene Street
> GRECC (BT/18/GR)
> Baltimore, MD 21201-1524
> (Phone) 410-605-7119
> (Fax) 410-605-7913 (Please call phone number above prior to faxing)
> >>> <G.Maubach at weinwolf.de> 05/10/16 11:10 AM >>>
> Hi Jim,
>
> I tried:
>
> sink("all.Rout")
> try(log("a"))
> sink()
>
> The program executes without warning or error. The file "all.Rout" is
> begin created. Nothing will be written to it. The file is accessable
> rights after the execution of the program by notepad.exe.
>
> The program
>
> zz <- file("all.Rout", open = "wt")
> sink(zz, type = "message")
> try(log("a"))
> sink()
> close(zz)
> unlink(zz)
>
> creates the file, does not write anything to it and is not accessable
> after program execution in R with notepad.exe.
>
> Any ideas what happens behind the szenes?
>
> Kind regards
>
> Georg
>
>
>
>
> Von: Jim Lemon <drjimlemon at gmail.com>
> An: G.Maubach at weinwolf.de,
> Kopie: r-help mailing list <r-help at r-project.org>
> Datum: 10.05.2016 13:16
> Betreff: Re: Re: [R] sink(): Cannot open file
>
>
>
> Have you tried:
>
> sink("all.Rout")
> try(log("a"))
> sink()
>
> Jim
>
> On Tue, May 10, 2016 at 9:05 PM, <G.Maubach at weinwolf.de> wrote:
> > Hi Jim,
> >
> > thanks for your reply.
> >
> > ad 1)
> > "all.Rout" was created in the correct directory. It exists properly with
> > correct file properties on Windows, e.g. creation date and time and file
> > size information.
> >
> > ad 2)
> > I can not access the file with Notepad.exe directly after it was created
> > by R. The error message is (translated):
> >
> > "Cannot access file "all.Rout". The file is opened by another process."
> >
> > ad 3)
> > If I close R completely the file access is released. Then I can read the
> > file using Notepad.exe. The contents is:
> >
> > Error in log("a") : non-numeric argument to mathematical function
> >
> > I tried
> >
> > close(zz)
> >
> > but the error persists.
> >
> > To me it looks like R is still accessing the file and not releasing the
> > connection for other programs. close(zz) should have solved the problem
> > but unfortantely it doesn't.
> >
> > What else could I try?
> >
> > Kind regards
> >
> > Georg
> >
> >
> >
> >
> > Von: Jim Lemon <drjimlemon at gmail.com>
> > An: G.Maubach at weinwolf.de,
> > Kopie: r-help mailing list <r-help at r-project.org>
> > Datum: 10.05.2016 12:50
> > Betreff: Re: [R] sink(): Cannot open file
> >
> >
> >
> > Hi Georg,
> > I don't suppose that you have:
> >
> > 1) checked that the file "all.Rout" exists somewhere?
> >
> > 2) if so, looked at the file with Notepad, perhaps?
> >
> > 3) let us in on the secret by pasting the contents of "all.Rout" into
> > your message if it is not too big?
> >
> > At a guess, trying:
> >
> > close(zz)
> >
> > might get you there.
> >
> > Jim
> >
> > On Tue, May 10, 2016 at 5:25 PM, <G.Maubach at weinwolf.de> wrote:
> >> Hi All,
> >>
> >> I would like to route the output to a file using sink(). When using the
> >> example from the ?sink documentation:
> >>
> >> sink("sink-examp.txt")
> >> i <- 1:10
> >> outer(i, i, "*")
> >> sink()
> >> unlink("sink-examp.txt")
> >>
> >> ## capture all the output to a file.
> >> zz <- file("all.Rout", open = "wt")
> >> sink(zz)
> >> sink(zz, type = "message")
> >> try(log("a"))
> >> ## back to the console
> >> sink(type = "message")
> >> sink()
> >> file.show("all.Rout")
> >>
> >> I can not open the file in Windows Explorer. The error message is:
> >>
> >> "Cannot open file. File is in use be another proces."
> >>
> >> How can I close the file in a manner that I can open it right after it
> > was
> >> created?
> >>
> >> Kind regards
> >>
> >> Georg
> >>
> >> ______________________________________________
> >> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> >> 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.
> >
> >
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> 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.
> Confidentiality Statement:
> This email message, including any attachments, is for ...{{dropped:7}}



More information about the R-help mailing list