[R] About source()
Rainer M Krug
r.m.krug at gmail.com
Wed Jan 4 10:58:38 CET 2012
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 04/01/12 10:39, Uwe Ligges wrote:
>
>
> On 03.01.2012 21:22, Li SUN wrote:
>> Thanks, Rolf, Justin and Uwe!
>>
>> Actually I wanted to run .R file as a script, just like what
>> people do for bash scripts or python scripts. It seems to me that
>> adding "#!/usr/bin/R -f" at the first line is what I need. Is
>> this true?
>
>
> Perhaps even "Rscript" rather than "R".
And there is also littler from Dirk Eddelbüttel:
http://dirk.eddelbuettel.com/code/littler.html
- From the description: "littler provides hash-bang (i.e. script
starting with #!/some/path) capability for GNU R, as well as simple
command-line and piping use."
Similar to Rscript, but with some differences.
I used both, and in most cases they are equivalent.
Rainer
>
> Uwe Ligges
>
>> Li Sun
>>
>>
>> 2012/1/2 Rolf Turner<rolf.turner at xtra.co.nz>:
>>> On 03/01/12 17:02, Li SUN wrote:
>>>>
>>>> Hello,
>>>>
>>>> I am a beginner to the R language and find it fantastic and
>>>> well-designed, quite different from other programming
>>>> languages.
>>>
>>> What a refreshingly sensible attitude!!! :-)
>>>
>>>> This is the first time I post on the r-help mailing list.
>>>>
>>>> In invoking the function source(filename), it seems that the
>>>> filename has to exist in the current working directory,
>>>> otherwise it has to be specified in full path. So is there
>>>> any mechanism(such as environment variable) to specify an
>>>> additional directory of .R files that source() could search
>>>> in?
>>>
>>>
>>> I'm no expert on this, and others may correct me, but
>>>
>>> (1) I don't believe any such mechanism exists.
>>>
>>> (2) It's probably not a good idea, even if such a mechanism
>>> were to exist. Directories have a tree structure, rather than
>>> being linearly ordered in the way that data bases on your R
>>> search path are ordered.
>>>
>>> I believe you would run all sorts of risks of confusion and of
>>> getting the wrong file were you to invoke such a mechanism.
>>>
>>> It is ``good practice'' to have separate directories
>>> associated with different projects and to situate all files,
>>> that you might wish to source in respect of a given project, in
>>> the directory associated with that project.
>>>
>>> I know that this is an irritating sort of response --- ``No,
>>> you can't do that, and you shouldn't do it anyway!'' --- but I
>>> sincerely believe this to be true.
>>>
>>> That being said, I also believe that you could program up such
>>> a mechanism yourself. I.e. build a function "source2()" which
>>> would have a "hard coded" list of directories to search, and
>>> would make use of the "try()" function.
>>>
>>> Might be a good exercise for you, given that you are starting
>>> out in R and looking to upgrade your skills! :-)
>>>
>>> cheers,
>>>
>>> Rolf Turner
>>>
>>>
>>
>> ______________________________________________
>> 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.
>
> ______________________________________________ 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.
- --
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation
Biology, UCT), Dipl. Phys. (Germany)
Centre of Excellence for Invasion Biology
Stellenbosch University
South Africa
Tel : +33 - (0)9 53 10 27 44
Cell: +33 - (0)6 85 62 59 98
Fax : +33 - (0)9 58 10 27 44
Fax (D): +49 - (0)3 21 21 25 22 44
email: Rainer at krugs.de
Skype: RMkrug
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk8EIs4ACgkQoYgNqgF2egpF+QCeObN8q+U6HHlM/Tsls/wF+VoH
/twAn2zaTzVrCdTxvENSK2buPlFsjlnC
=tEkV
-----END PGP SIGNATURE-----
More information about the R-help
mailing list