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: 231
        
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