Hi,
I have a simple task, but I am looking for a clever and fast way to do it:
I have a vector x with 0,1 or 2 and I want to create another vector y with
the same length following the rules:
If the element in x is equal to 0, the element in y is equal to 0
If the element in x is equal to 2, the element in y is equal to 1
If the element in x is equal to 1, the element in y is either 0 or 1 (sample
from c(0,1))
thus the vector
x
[,1]
[1,] 0
[2,] 2
[3,] 1
[4,] 2
[5,] 0
[6,] 1
[7,] 2
could produce the vector y (this is one of the possibilities since y|x=1 is
either 0 or 1
y
[,1]
[1,] 0
[2,] 1
[3,] 1
[4,] 1
[5,] 0
[6,] 0
[7,] 1
I know how to do this using for loops but I was wondering if you guys could
suggest a better way
Thanks