One way would be to create a vector of colours and then cut() to index the vector:

colours <- c("red", "blue", "green","back")
colours[cut(x, c(min(x),250,500,700,max(x)),lab=F)]

Hadley


Arend P. van der Veen wrote:


Hi,

I have simple R question.

I have a vector x that contains real numbers.  I would like to create
another vector col that is the same length of x such that:

if x[i] < 250 then col[i] = "red"
else if x[i] < 500 then col[i] = "blue"
else if x[i] < 750 then col[i] = "green"
else col[i] = "black" for all i

I am convinced that there is probably a very efficient way to do this in
R but I am not able to figure it out.  Any help would be greatly
appreciated.

Thanks in advance,
Arend van der Veen


______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help

Reply via email to