[R] How to load functions in R
Adam D. I. Kramer
adik-rhelp at ilovebacon.org
Thu Sep 11 21:14:21 CEST 2008
Source(file.path) executes the file at file.path in order, just as if you
had typed it in.
So, the source file should in fact name each function in turn:
f1 <- function(x) { ... }
f2 <- function(x) { ... }
...etc.
So a good way to debug is to just copy and paste lines from your source file
into the R command line, and see if they behave as expected.
--Adam
On Thu, 11 Sep 2008, Adaikalavan Ramasamy wrote:
> Strange.
>
> source() should read all the function in that file unless there was a syntax
> error or something else preventing the other function from being parsed
> correctly. Could you send us a simplified example that reproduces this
> problem?
>
> Thanks.
>
> Regards, Adai
>
>
>
> Mihai.Mirauta at bafin.de wrote:
>> Hello,
>> It seems that all methods work. Source() however loads only the last
>> function. with save(a,b,file="path") i can save more than 1 function.
>> Thanks a lot,
>>
>> Mihai
>> -----Ursprüngliche Nachricht-----
>> Von: Yihui Xie [mailto:xieyihui at gmail.com] Gesendet: Donnerstag, 11.
>> September 2008 16:48
>> An: a.ramasamy at imperial.ac.uk
>> Cc: Mirauta, Mihai; r-help at r-project.org
>> Betreff: Re: [R] How to load functions in R
>>
>> We may just read them in the R console instead of an external editor, and
>> "fix()" or "edit()" them when we need to make any modifications. A trivial
>> advantage of saving them as an image file in Windows is that you can
>> double-click the file and R will be started with these objects loaded
>> automatically. Anyway, to save the functions as ASCII files or even write
>> a package are also good solutions :-)
>>
>> Regards,
>> Yihui
>>
>> On Thu, Sep 11, 2008 at 10:34 PM, Adaikalavan Ramasamy
>> <a.ramasamy at imperial.ac.uk> wrote:
>>
>>> I would recommend saving the functions into a separate file and then
>>> using
>>> source() as bartjoosen suggested.
>>>
>>> I do not recommend using save() here because the output is non-readable
>>> (even when using ascii=TRUE option). Which means that you have to load()
>>> it, then copy-and-paste into an editor before making changes and then
>>> running it again in R and then save() again.
>>>
>>> Another better option is to consider making your own package. It may
>>> sound complicated but once you mastered it, it makes your functions more
>>> portable and encourages you to document it. Further, the function
>>> package.skeleton() simplifies much of it.
>>>
>>> Regards, Adai
>>>
>>>
>>>
>>> Yihui Xie wrote:
>>>
>>>> Hi, you may save your functions somewhere on your disk using "save()"
>>>> and load them next time when you want to use them. See ?save and ?load
>>>>
>>>> Yihui
>>>>
>>>> On Thu, Sep 11, 2008 at 9:30 PM, <Mihai.Mirauta at bafin.de> wrote:
>>>>
>>>>> Hello,
>>>>>
>>>>> I am trying to use self created functions in other scripts than the one
>>>>> where they are stored.
>>>>> For the moment I am using the following structure of commands to do
>>>>> that:
>>>>>
>>>>> 1. Load the text file with the functions in the current script:
>>>>> x=parse("path")
>>>>> 2. transform the tex in a function: f1=eval(x[1]), f2=eval(x[2]) if
>>>>> more than one function is stored in the text file 3. use the functions
>>>>> as normal
>>>>>
>>>>> Is there another possibility to do the same?
>>>>> Thank you,
>>>>>
>>>>> Mihai Mirauta
>>>>>
>>>>> [[alternative HTML version deleted]]
>>>>>
>>>>>
>>>
>>
>>
>>
>> --
>> Yihui Xie <xieyihui at gmail.com>
>> Phone: +86-(0)10-82509086 Fax: +86-(0)10-82509086
>> Mobile: +86-15810805877
>> Homepage: http://www.yihui.name
>> School of Statistics, Room 1037, Mingde Main Building, Renmin University
>> of China, Beijing, 100872, China
>>
>>
>
> ______________________________________________
> 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