Enésima aparición de ID por fecha o índice

Un usuario Pregunto ✅

Jowill

Hola a todos,

He estado peinando Internet durante un día de trabajo y no he tenido suerte al aplicar las soluciones que encontré para mi problema. Mi conocimiento de DAX no es el mejor.

Quiero crear una columna calculada que nos diga cuál es la enésima aparición de este ID en la tabla con respecto a la fecha. También tengo una columna de índice que podría usarse de manera similar a la fecha, ya que cuanto menor sea el número de índice, más temprana será la fecha.

Un ejemplo de la salida sería algo como esto

nthoccurrence.PNG

He buscado soluciones desde aquí: https://community.powerbi.com/t5/Desktop/Count-Nth-of-Occurrence/mp/806080#M387708

Pero esto no funcionó y solo me dio 1 en cada fila.

También encontré esto https: //community.powerbi.com/t5/Desktop/DAX-to-count-occurrence-number-of-a-value-in-a-column/mp/8 … pero no pude traducir los cambios en el editor de consultas a mi propio conjunto de datos.

Cualquier ayuda sería apreciada

Atentamente,

J

En respuesta a Jowill

Hola @Jowill ,

Puede consultar la siguiente columna calculada después de agregar una columna de índice:

Column = CALCULATE(COUNT('Table'[ID]),FILTER('Table','Table'[ID] = EARLIER('Table'[ID]) && 'Table'[Index] <= EARLIER('Table'[Index])))

Capture.PNG

Para obtener más detalles, consulte el archivo pbix: https: //qiuyunus-my.sharepoint.com/: u: / g / personal / pbipro_qiuyunus_onmicrosoft_com / EfVyY87ab_5Dv6JGm -…

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los demás miembros a encontrarla más rápidamente.

Atentamente,

Dedmon Dai

mahoneypat

Si agrega una columna de índice como sugiere, aquí hay una forma de hacerlo en su medida:

Occurence Number =
VAR __thisindex =
    MIN ( Occurence[Index] )
VAR __thistext =
    MIN ( Occurence[Column1] )
VAR __rankthisindex =
    RANKX (
        CALCULATETABLE (
            VALUES ( Occurence[Index] ),
            ALL ( Occurence ),
            Occurence[Column1] = __thistext
        ),
        Occurence[Index],
        __thisindex,
        ASC
    )
RETURN
    __rankthisindex

Si esto le funciona, márquelo como la solución. Las felicitaciones también son apreciadas. Por favor avíseme si no es así.

Saludos,

Palmadita

Jowill

En respuesta a mahoneypat

Hola pat

Muchas gracias por crear una solución para mí.

No tuve suerte, solo obtengo un 1 por cada fila.

Por si acaso me he perdido algo:

nthoccurrence2.PNG

Así es como se veía la mía donde mi tabla se llama ForwardOrderBook y mi columna de ID se llama Proyecto WBS y, por supuesto, mi columna de índice también está allí.

¿Alguna idea de por qué no habría funcionado?

Gracias,

J

En respuesta a Jowill

Hola @Jowill ,

Puede consultar la siguiente columna calculada después de agregar una columna de índice:

Column = CALCULATE(COUNT('Table'[ID]),FILTER('Table','Table'[ID] = EARLIER('Table'[ID]) && 'Table'[Index] <= EARLIER('Table'[Index])))

Capture.PNG

Para obtener más detalles, consulte el archivo pbix: https: //qiuyunus-my.sharepoint.com/: u: / g / personal / pbipro_qiuyunus_onmicrosoft_com / EfVyY87ab_5Dv6JGm -…

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los demás miembros a encontrarla más rápidamente.

Atentamente,

Dedmon Dai

Jowill

En respuesta a v-deddai1-msft

Gracias Dedmon, esto me ha funcionado. 🙂

Había aplicado este tipo de fórmula antes, pero antes no estaba funcionando, ¡así que no estoy seguro de qué es diferente esta vez!

Te lo agradezco, gracias de nuevo

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *