Check your eligibility for this 50% exam voucher offer and join us for free live learning sessions to get prepared for Exam DP-700.
Get StartedDon't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.
Una medida rankx aparentemente simple no está devolviendo los valores que esperaría, y he intentado todo para resolver el problema.
Tengo una tabla de puntajes por persona, donde cada persona puede tener 1 o más puntajes en una prueba. He creado una medida para promediar sus puntuaciones: promedio(Tabla[Puntuaciones]). Esto funciona correctamente.
Luego creé una medida para clasificar los puntajes promedio por persona: rankx(allselected(Table[Names]),[Average],,desc,Dense). Esto funciona principalmente , con algunas excepciones:
En el primer ejemplo, las personas 1, 2 y 3 están empatadas en el puntaje promedio, pero las personas 1 y 2 están empatadas en la clasificación, mientras que la persona 3 está un rango más bajo que ellos. Puedes ver que esto no es un error de redondeo de los promedios (que yo sepa, a menos que PBI lo esté calculando de una manera extraña). La única diferencia es la cantidad de puntuaciones. Además, las personas 6 y 7 también tienen el mismo promedio y tienen diferentes rangos.
En este ejemplo, la persona A y B tienen la misma puntuación media, pero diferentes cantidades de puntuaciones. Los puntajes brutos individuales para cada persona tampoco parecen tener ningún efecto, ya que son diferentes para cada persona.
@DFPRO sí, sube a 4 decimales, como mencioné, mejor usar la función RANK y sí, puede usarla para medidas, no estoy seguro de dónde obtiene que esto no se puede usar para medidas. ¡Absolutamente puedes usarlo!
@parry2k gracias por la recomendación. Esta solución funciona, sin embargo, me preocupa el redondeo. ¿Currency() se redondea al 5º decimal? Me preocupa que pueda haber casos en los que esto cause problemas, y preferiría redondear al decimal 10 o superior, por ejemplo. Sin embargo, según mis datos actuales, funciona correctamente.
Pensé que RANK() no se podía usar para clasificar medidas, ¿solo columnas? En este caso, no puedo usar RANK(), sino solo RANKX().
@DFPRO He visto en el pasado, generalmente es debido al redondeo de números decimales, intente usar el siguiente código o recomendaría usar la nueva función RANK, pero primero intente con esto
rankx(allselected(Table[Names]),CURRENCY([Average]),,desc,Dense)
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Prices go up Feb. 11th.
Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.