On Sep 29, 2009, at 2:36 PM, Jarek Jasiewicz wrote:

well function arguments are in square brackets. z is result (new vector). I show Matematica syntax, but cannot explain what I expect. Sorry The example is wrong because it can be replaced by R cut function. The arguments are: condition,action.... and can be replaced by ste of ifelse formulas:

if (x<10) x<-0.7
else if (x<30 && x=>10) x<-x^2/(x-1)
etc...
but that solution is slow for vectors with millions of numbers

1)Slow? It shouldn't even work! The if { } else { } construct is for program control, not for iterative testing and assignment. You should be using ifelse(<cond>, <affirm-val>, <neg-val>) which is designed for that purpose.

2) you should not be using "&&" unless you are working with a scalar. Use "&".

Perhaps (minimally tested):

x <- 1:100
ifelse( x < 10, 0.7, ifelse( x<30 & x>=10, x^2/(x-1), NA))


(And the "x >= 10" , (I doubted that " =>" would be correct and testing shows it does throw a syntax error), is not needed since you would never get to that evaluation if x were < 10.

Note: the ifelse's can be only nested up to 7 levels if memory serves.

--
David


thanks

Jarek

Erik Iverson pisze:
Hello,

I'm looking for equivalent of Matematica function "Which" which works as
follows:

z = Which[x<10,0.3, 10<=x<20,0.5, 20<=x<100,1]

where x is a vector


Unless someone happens to be a Mathematica user (very possible), I don't know how we would answer the question. You give an example of the function call, but not what the function arguments or return value are. There is an R function called "which", but what the Mathematica "Which" is doing is entirely mysterious from your example. What is in "z" for instance??


______________________________________________
R-help@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.

David Winsemius, MD
Heritage Laboratories
West Hartford, CT

______________________________________________
R-help@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.

Reply via email to