[R] Warning: condition has length > 1
nawaf b
talda at hotmail.com
Sat Oct 8 15:15:19 CEST 2005
Hi -
I was wondering if anyone came across a problem such as mine! I was trying
to create a user-defined function, however, the results from calling the
function are unexpected!
When passing X parameter as a single value variable (x<-c(3)), everything
works fine. However, when passing a parameter as a vector with multiple
values (as the case in my code), the 'if condition' is only executed once!
Here is my code:
> x
[1] 0.3 1.0 0.7 22.0
> myfunction<-function(x)
+ {
+ if (x>=1) 0
+ else x^2
+ }
> myfunction(x)
[1] 0.09 1.00 0.49 484.00
Warning message:
the condition has length > 1 and only the first element will be used in: if
(x >= 1) 0 else x^2
>
Is there a way to overcome this issue? Can you please explain what
modifications to the code I need to accommodate to make it work.
Thanks,
Nawaf
More information about the R-help
mailing list