latools/helpers/helpers.py
def bool_2_indices(a):
    """
    Convert boolean array into a 2D array of (start, stop) pairs.
    """
    if any(a):
        lims = []
        lims.append(np.where(a[:-1] != a[1:])[0])

        if a[0]:
            lims.append([0])
        if a[-1]:
            lims.append([len(a) - 1])
        lims = np.concatenate(lims)
        lims.sort()

        return np.reshape(lims, (lims.size // 2, 2))
    else:
        return None
def bool_2_indices(a):
    """
    Convert boolean array into a 2D array of (start, stop) pairs.
    """
    if any(a):
        lims = []
        lims.append(np.where(a[:-1] != a[1:])[0])

        if a[0]:
            lims.append([0])
        if a[-1]:
            lims.append([len(a) - 1])
        lims = np.concatenate(lims)
        lims.sort()

        return np.reshape(lims, (lims.size // 2, 2))
    else:
        return None
def bool_2_indices ( a ) : if any ( a ) : lims = [ ] lims . append ( np . where ( a [ : - 1 ] != a [ 1 : ] ) [ 0 ] ) if a [ 0 ] : lims . append ( [ 0 ] ) if a [ - 1 ] : lims . append ( [ len ( a ) - 1 ] ) lims = np . concatenate ( lims ) lims . sort ( ) return np . reshape ( lims , ( lims . size // 2 , 2 ) ) else : return None
Convert boolean array into a 2D array of (start, stop) pairs.
Convert boolean array into a 2D array of ( start stop ) pairs .