Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

DAX para agrupar el valor

Hola

He estado tratando de crear un código dax que reagruparía mis datos como se muestra a continuación:

IdEstadoFreq IdEstado
101173150Obediente1 101173150Obediente
101173547Obediente2 101173547Obediente
101173547Primero2 101173547Obediente
101173549Obediente2 101173549No cumple
101173549No cumple2 101173549No cumple
101173571No cumple1 101173571No cumple
101173572No cumple2 101173572No cumple
101173572Última2 101173572No cumple
101173702Obediente1 101173702Obediente
101173706Obediente2 101173706No cumple
101173706No cumple2 101173706No cumple
101173815Obediente2 101173815No cumple
101173815No cumple2 101173815No cumple
101173847No cumple1 101173847No cumple
101173868Obediente3 101173868No cumple
101173868No cumple3 101173868No cumple
101173868Primero3 101173868No cumple

El escenario es que cuando hay varios valores para un ID priorizaría el estado "no conforme" si "no es compatible" no está allí, tomaría "conforme" sobre el estado "primero" o "último".

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

No @ladyhaley ,

Hay un pequeño error en la expresión proporcionada por @amitchandak. Por favor, modifíquelo de la siguiente manera:

New column = 
VAR _nc =
    COUNTX (
        FILTER ( 'Table', [ID] = EARLIER ( [ID] ) && [Status] = "Not Compliant" ),
        [ID]
    )
VAR _c =
    COUNTX (
        FILTER ( 'Table', [ID] = EARLIER ( [ID] ) && [Status] = "Compliant" ),
        [ID]
    )
VAR _f =
    COUNTX (
        FILTER ( 'Table', [ID] = EARLIER ( [ID] ) && [Status] = "First" ),
        [ID]
    )
RETURN
    SWITCH (
        TRUE (),
        NOT ( ISBLANK ( _nc ) ), "Not Compliant",
        NOT ( ISBLANK ( _c ) ), "Compliant",
        NOT ( ISBLANK ( _f ) ), "First",
        "Last"
    )

O prueba esto:

Column = 
VAR _nc =
    COUNTROWS (
        FILTER ( 'Table', [ID] = EARLIER ( [ID] ) && [Status] = "Not Compliant" )
    )
VAR _c =
    COUNTROWS (
        FILTER ( 'Table', [ID] = EARLIER ( [ID] ) && [Status] = "Compliant" )
    )
VAR _f =
    COUNTROWS ( 
        FILTER ( 'Table', [ID] = EARLIER ( [ID] ) && [Status] = "First" ) )
RETURN
    SWITCH (
        TRUE (),
        NOT ( ISBLANK ( _nc ) ), "Not Compliant",
        NOT ( ISBLANK ( _c ) ), "Compliant",
        NOT ( ISBLANK ( _f ) ), "First",
        "Last"
    )
Measure =
VAR _nc =
    COUNTROWS (
        FILTER (
            ALLSELECTED ( 'Table' ),
            [ID] = MAX ( [ID] )
                && [Status] = "Not Compliant"
        )
    )
VAR _c =
    COUNTROWS (
        FILTER (
            ALLSELECTED ( 'Table' ),
            [ID] = MAX ( [ID] )
                && [Status] = "Compliant"
        )
    )
VAR _f =
    COUNTROWS (
        FILTER ( ALLSELECTED ( 'Table' ), [ID] = MAX ( [ID] ) && [Status] = "First" )
    )
RETURN
    SWITCH (
        TRUE (),
        NOT ( ISBLANK ( _nc ) ), "Not Compliant",
        NOT ( ISBLANK ( _c ) ), "Compliant",
        NOT ( ISBLANK ( _f ) ), "First",
        "Last"
    )

COLUMN.JPGMEASURE.JPG

Saludos

Icey

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

No @ladyhaley ,

Hay un pequeño error en la expresión proporcionada por @amitchandak. Por favor, modifíquelo de la siguiente manera:

New column = 
VAR _nc =
    COUNTX (
        FILTER ( 'Table', [ID] = EARLIER ( [ID] ) && [Status] = "Not Compliant" ),
        [ID]
    )
VAR _c =
    COUNTX (
        FILTER ( 'Table', [ID] = EARLIER ( [ID] ) && [Status] = "Compliant" ),
        [ID]
    )
VAR _f =
    COUNTX (
        FILTER ( 'Table', [ID] = EARLIER ( [ID] ) && [Status] = "First" ),
        [ID]
    )
RETURN
    SWITCH (
        TRUE (),
        NOT ( ISBLANK ( _nc ) ), "Not Compliant",
        NOT ( ISBLANK ( _c ) ), "Compliant",
        NOT ( ISBLANK ( _f ) ), "First",
        "Last"
    )

O prueba esto:

Column = 
VAR _nc =
    COUNTROWS (
        FILTER ( 'Table', [ID] = EARLIER ( [ID] ) && [Status] = "Not Compliant" )
    )
VAR _c =
    COUNTROWS (
        FILTER ( 'Table', [ID] = EARLIER ( [ID] ) && [Status] = "Compliant" )
    )
VAR _f =
    COUNTROWS ( 
        FILTER ( 'Table', [ID] = EARLIER ( [ID] ) && [Status] = "First" ) )
RETURN
    SWITCH (
        TRUE (),
        NOT ( ISBLANK ( _nc ) ), "Not Compliant",
        NOT ( ISBLANK ( _c ) ), "Compliant",
        NOT ( ISBLANK ( _f ) ), "First",
        "Last"
    )
Measure =
VAR _nc =
    COUNTROWS (
        FILTER (
            ALLSELECTED ( 'Table' ),
            [ID] = MAX ( [ID] )
                && [Status] = "Not Compliant"
        )
    )
VAR _c =
    COUNTROWS (
        FILTER (
            ALLSELECTED ( 'Table' ),
            [ID] = MAX ( [ID] )
                && [Status] = "Compliant"
        )
    )
VAR _f =
    COUNTROWS (
        FILTER ( ALLSELECTED ( 'Table' ), [ID] = MAX ( [ID] ) && [Status] = "First" )
    )
RETURN
    SWITCH (
        TRUE (),
        NOT ( ISBLANK ( _nc ) ), "Not Compliant",
        NOT ( ISBLANK ( _c ) ), "Compliant",
        NOT ( ISBLANK ( _f ) ), "First",
        "Last"
    )

COLUMN.JPGMEASURE.JPG

Saludos

Icey

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Syndicate_Admin
Administrator
Administrator

@ladyhaley , una nueva columna como

Nueva columna ?
var _nc - countx(filter(table, [ID] ?earlier([ID]), [Status] ?"Not Compliant"),[ID])
var _c - countx(filter(table, [ID] ?earlier([ID]), [Status] ?"Compliant"),[ID])
var _f - countx(filter(table, [ID] ?earlier([ID]), [Status] ?"First"),[ID])
devolución
Switch( true(),
not(isblank(_nc)) , "Not Compliant",
not(isblank(_c)) , "Compliant",
not(isblank(_f)) , "First",
"El último"
)

Helpful resources

Announcements
PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.