[R] R 'function' as "subroutine"
Gabor Grothendieck
ggrothendieck at gmail.com
Wed Oct 3 16:48:57 CEST 2007
On 10/3/07, Ted Harding <Ted.Harding at manchester.ac.uk> wrote:
> Thanks for the suggestions, Gabor!
>
> On 03-Oct-07 12:52:51, Gabor Grothendieck wrote:
> > 1. you could place the commands in a file and source the file each
> > time you want to run it or it might be good enough to place it on the
> > clipboard and then just do source("clipboard")
>
> Using the file solution is a bit cumbersome for the sort of
> situation I was referring to. Basically, I'll be using R
> exploratively, so entering various sequences of commands.
> Every so often I will think "Ah, I'll probably need that
> block again".
>
> Since there will usually be several of these, the clip-board
> solution wouldn't work.
>
> In fact, the way I usually work for this kind of thing is
> to have a "side-window" in which I'm editing a text file,
> and into which I write the R commands I want to keep track
> of (a bit like a rather random partial history). Then, if
> I want to re-use any of these, I can highlight a block with
> the mouse and paste it into the R console.
>
> So it's a bit like your file solution. This text file can
> also subsequently be used as a source of raw material for
> a properly constructed batch file, which is a bonus.
>
> However, there are two potential inconveniences:
> 1) pasting with the mouse can be error prone, if one has
> a "dexterity lapse";
> 2) One may end up scrolling back and forth in the file
> groping for "that sequence" -- and may end up with
> one which looks like the one you want, but in fact
> is different in some essential detail. I've also
> had that problem where there are many commands like
>
> X<-source("AUX12NBX4G001.csv")
>
> where choice of filenames has nothing to do with me...
>
> Indeed, a "function" replacement of the above could
> look like
>
> sNBX4<-function(){X<<-source("AUX12NBX4G001.csv")}
source is used for R commands, not data. Maybe you want
read.csv .
Also note that by default source evaluates its input in the global
environment. See ?source
More information about the R-help
mailing list