How to detect a sign change for elements in a numpy array

Posted by cb160 on Stack Overflow See other posts from Stack Overflow or by cb160
Published on 2010-04-16T11:04:40Z Indexed on 2010/04/16 11:23 UTC
Read the original article Hit count: 164

Filed under:
|

I have a numpy array with positive and negative values in.

a = array([1,1,-1,-2,-3,4,5])

I want to create another array which contains a value at each index where a sign change occurs (For example, if the current element is positive and the previous element is negative and vice versa).

For the array above, I would expect to get the following result

array([0,0,1,0,0,1,0])

Alternatively, a list of the positions in the array where the sign changes occur or list of booleans instead of 0's and 1's is fine.

© Stack Overflow or respective owner

Related posts about python

Related posts about numpy