Forum Discussion
RANKX
- 4 years ago
Hola
Consulte la siguiente fórmula.
rank1 = var _tab=SUMMARIZE('Table','Table'[total scare]) Return RANKX(_tab,[total scare],,DESC,Dense)final = var _count1=CALCULATE(DISTINCTCOUNT('Table'[name id]),FILTER('Table','Table'[rank1]<EARLIER('Table'[rank1]))) var _count2=CALCULATE(DISTINCTCOUNT('Table'[rank1]),FILTER('Table','Table'[rank1]<EARLIER('Table'[rank1]))) Return 'Table'[rank1]+_count1-_count2Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Saludos
Equipo de apoyo a la comunidad _ Polly
Cree una medida para hacer referencia al valor de la puntuación total.
total = SELECTEDVALUE('Table'[total scare])
A continuación, cree una medida para ordenar.
measure = RANKX(ALL('Table'),[total],,ASC, Dense)
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Saludos
Equipo de apoyo a la comunidad _ Polly
Hola @v-polly-msft ,
Gracias por su respuesta. Para el conjunto de datos dado, estoy de acuerdo en que la lógica está funcionando como se esperaba.
Pero estoy buscando un RANGO normal no un RANGO DENSO. Cuando probé esa medida para los datos reales, el rango se basa solo en la puntuación TOTAL, no en la identificación o el nombre. Quiero decir, si hay 100 ID únicos, espero 100 rangos basados en ID. Pero con la lógica "SELECTEDVALUE", el rango se basará solo en Total. Probé la misma medida para RANK normal en lugar de DENSE. Esto apunta de nuevo a mi cuestión inicial.
Si pruebo Dense, obtendré los rangos 1, 2 y 3. Pero los resultados reales para este conjunto de datos deberían ser, Anu - 1, John -1, Lisa -3, Sana - 3, Ann - 5. Todavía no estoy obteniendo este resultado.
¡Cualquier ayuda sería apreciada!
- Syndicate_Admin4 years ago
Administrator
Hola
Consulte la siguiente fórmula.
rank1 = var _tab=SUMMARIZE('Table','Table'[total scare]) Return RANKX(_tab,[total scare],,DESC,Dense)final = var _count1=CALCULATE(DISTINCTCOUNT('Table'[name id]),FILTER('Table','Table'[rank1]<EARLIER('Table'[rank1]))) var _count2=CALCULATE(DISTINCTCOUNT('Table'[rank1]),FILTER('Table','Table'[rank1]<EARLIER('Table'[rank1]))) Return 'Table'[rank1]+_count1-_count2Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Saludos
Equipo de apoyo a la comunidad _ Polly
- Syndicate_Admin4 years ago
Administrator
Hola @v-polly-msft
Muchas gracias por su respuesta. Eso realmente resolvió mi problema. Rank ahora está funcionando como se esperaba.