By using expression a = b you actually copy the reference to b. If you want to copy its value, you should rather walk through all b's items and copy their values to a.
In numpy you should use copy function.
>>> import numpy
>>> b = numpy.array([-0.06106568, -0.10843541, -0.0694688 , 0.02464023, -0.03686665,
... -0.0582096 , -0.13476669, -0.08505708, 0.00391955, -0.12300518,
... -0.01183732, -0.05374973, -0.12300518, -0.05312849, 0.01963862,
... 0.00155719, -0.10843541, -0.08490177, -0.08505708, -0.02026149,
... -0.01777489, 0.01183732, -0.11575136, 0.04278603, -0.0694688 ,
... -0.06106568, -0.08755022, -0.01660802, -0.06087603, -0.06582411])
>>> a = numpy.copy(b)
>>> a
array([-0.06106568, -0.10843541, -0.0694688 , 0.02464023, -0.03686665,
-0.0582096 , -0.13476669, -0.08505708, 0.00391955, -0.12300518,
-0.01183732, -0.05374973, -0.12300518, -0.05312849, 0.01963862,
0.00155719, -0.10843541, -0.08490177, -0.08505708, -0.02026149,
-0.01777489, 0.01183732, -0.11575136, 0.04278603, -0.0694688 ,
-0.06106568, -0.08755022, -0.01660802, -0.06087603, -0.06582411])
>>> a[a<= 0] = 0
>>> a[a> 0] = 1
>>> a
array([ 0., 0., 0., 1., 0., 0., 0., 0., 1., 0., 0., 0., 0.,
0., 1., 1., 0., 0., 0., 0., 0., 1., 0., 1., 0., 0.,
0., 0., 0., 0.])
>>> b
array([-0.06106568, -0.10843541, -0.0694688 , 0.02464023, -0.03686665,
-0.0582096 , -0.13476669, -0.08505708, 0.00391955, -0.12300518,
-0.01183732, -0.05374973, -0.12300518, -0.05312849, 0.01963862,
0.00155719, -0.10843541, -0.08490177, -0.08505708, -0.02026149,
-0.01777489, 0.01183732, -0.11575136, 0.04278603, -0.0694688 ,
-0.06106568, -0.08755022, -0.01660802, -0.06087603, -0.06582411])
There are some native ways to do it, but if you work with mathematics, using only numpy is strongly recommended.
UPDATE
I don't have in my mind any non-numpy way which will cause entire compatibility with your case.
atobwitha=b, if you wanted a copy thena = np.copy(b)would give you a copy