Forum Discussion

Amymai's avatar
Amymai
Frequent Visitor
7 years ago
Solved

Find Consecutive Rows

Hi everyone,

 

I want to find 2 and 3 consecutive rows where Index equals 1 and show the results as below.

Can you please help me. I'd like to use DAX, not power query as I can't go back to query at this step.

 

Thanks so much!

 

Index2 consecutive rows (result)3 consecutive rows (result)
110
110
000
111
111
111
000
100
000
111
111
111

2 Replies

  • v-chuncz-msft's avatar
    v-chuncz-msft
    Icon for Community Support rankCommunity Support

    Amymai,

     

    You may add an index column in Query Editor and use DAX below to add a calculated column.

    Column =
    VAR c = 2
    RETURN
        IF (
            Table1[Index] = 0
                ||
                VAR i = Table1[Index.1]
                VAR p =
                    MAXX (
                        FILTER ( Table1, Table1[Index.1] < i && Table1[Index] = 0 ),
                        Table1[Index.1]
                    )
                VAR n =
                    MINX (
                        FILTER ( Table1, Table1[Index.1] > i && Table1[Index] = 0 ),
                        Table1[Index.1]
                    )
                RETURN
                    IF ( ISBLANK ( n ), MAX ( Table1[Index.1] ) + 1, n )
                        - IF ( ISBLANK ( p ), MIN ( Table1[Index.1] ) - 1, p )
                        - 1
                        < c,
            0,
            1
        )