With this code:
import scipy
from scipy import *
x = r_[1:15]
print x
a = select([x > 7, x >= 4],[x,x+10])
print a
I get this answer:
[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14]
[ 0 0 0 14 15 16 17 8 9 10 11 12 13 14]
But why do I have zeros in the beginning and not in the end? Thanks in advance.
You seem to be using numpy.
From the documentation for numpy.select():
Since your conditions are
x > 7andx >=4, the output array will have elements fromx+10whenx >= 4and fromxwhenx > 7. When both the conditions are false, i.e., whenx < 4, you will get default, which is 0. So you get 3 zeros in the beginning.You don’t get any zeros in the end because at least one of the conditions is true (both are true, in fact).