[R] default values

Prof Brian Ripley ripley at stats.ox.ac.uk
Thu Mar 13 19:57:39 CET 2008


On Thu, 13 Mar 2008, Dwayne Blind wrote:

> Thanks a lot.
>
> You were right :-)
>
> Professor Ripley can I use your SPLUS book for R too ?

'Modern Applied Statistics with S' and 'S Programming' both cover S and 
its implementations in S-PLUS and R.

However, 'Modern Applied Statistics with S-PLUS' is now so last millenium 
that it is an unreliable guide to recent versions of either.

>
> 2008/3/12, Prof Brian Ripley <ripley at stats.ox.ac.uk>:
>>
>> On Wed, 12 Mar 2008, Dwayne Blind wrote:
>>
>>
>>> Dear R users,
>>>
>>> I wrote the following toy example to explain my problem :
>>>
>>> a=0
>>> f=function(x,y,z) {
>>>    if (a==0) x[1]+x[2]+y
>>>    if (a!=0) x[1]+x[2]+y+z
>>> }
>>> f(1:2,3)
>>>
>>>
>>> I have not specified z and I get an error.
>>
>>
>> What was the error?  It works for me (so I've no idea), and returns NULL,
>> the value of the last expression (invisibly).  I think you intended
>>
>> f <- function(x, y, z) if (a==0) x[1]+x[2]+y else x[1]+x[2]+y+z
>>
>> or
>>
>> f <- function(x, y, z) ifelse(a==0, x[1]+x[2]+y, x[1]+x[2]+y+z)
>>
>>
>>
>>> Although a=0, R seems to want to
>>> know z because it's in the expression x[1]+x[2]+y+z.
>>>
>>> So I tried to put a default value :
>>>
>>> a=0
>>> f=function(x,y,z=0) {
>>>    if (a==0) x[1]+x[2]+y
>>>    if (a!=0) x[1]+x[2]+y+z
>>> }
>>> f(1:2,3)
>>>
>>> Why isn't it working ? Sometimes everything is fine even though a
>> parameter
>>> is not specified.
>>>
>>> Thanks a lot.
>>>
>>
>>>       [[alternative HTML version deleted]]
>>>
>>> ______________________________________________
>>> 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.
>>>
>>
>>
>> --
>> Brian D. Ripley,                  ripley at stats.ox.ac.uk
>> Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
>> University of Oxford,             Tel:  +44 1865 272861 (self)
>> 1 South Parks Road,                     +44 1865 272866 (PA)
>> Oxford OX1 3TG, UK                Fax:  +44 1865 272595
>>
>

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595



More information about the R-help mailing list