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

Power BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.

Reply
Syndicate_Admin
Administrator
Administrator

Necesita ayuda con DAX para los valores N principales

Hola

He escrito un DAX para mostrar el % superior de ciertas categorías de la tabla de datos
Por ejemplo, el 20% de mis seguidores viven en Londres, el 85% se identifican como hombres, etc.
Este es mi DAX :

KPI de la ciudad principal =
VAR Tabla de ciudades =
RESUMIR(
«Datos»,
'Datos'[Ciudad],
"@TotalFAN", CONTAR('Datos'[FAN])
)

VAR TotalFAN = CALCULAR(CONTAR('Datos'[FAN]))
VAR Fila superior = TOPN(1, CityTable, [@TotalFAN], DESC)
VAR TopCity = SELECTCOLUMNS(Fila superior, "Ciudad Superior", 'Datos'[Ciudad])
VAR TopCityCount = SELECTCOLUMNS(Fila superior, "Recuento superior", [@TotalFAN])

DEVOLUCIÓN
FORMATO(DIVIDIR(TopCityCount, TotalFAN), "##.#%") & " residir en " & FIRSTNONBLANK(TopCity, [TopCity])

y así es como se muestra en visual (CARD) -
abhishek_2593_1-1747040627865.png

Sin embargo, me gustaría cambiar el DAX para mostrar no solo el Topmost, sino el Top 5 o 10 en su lugar. Me resulta difícil mostrar lo mismo.
¿Puedes ayudarme, por favor?

Gracias de antemano.

1 ACCEPTED SOLUTION

Hola @abhishek_2593

¿Puedes probar el siguiente DAX?

He modificado solo en (VAR ResultTable y VAR ResultString)

KPI de las principales ciudades =
VAR N = SELECTEDVALUE('Top'[top])
VAR CityTable =
RESUMIR(
«Cuadro (2)»,
'Tabla (2)'[Ciudad],
"TotalFAN", COUNT('Tabla (2)'[FAN ID])
)

VAR TotalFAN =
CALCULAR(CONTAR('Tabla (2)'[ID de FAN]))

VAR TopCitiesTable =
TOPN(N, CityTable, [TotalFAN], DESC)


Tabla de resultados del VAR =
ADDCOLUMNS(
TopCitiesTable,
"Porcentaje Numérico", DIVIDE([TotalFAN], TotalFAN),
"FormattedPercentage", FORMAT(DIVIDE([TotalFAN], TotalFAN), "0.0%")
)


VAR ResultString =
CONCATENATEX(
Tabla de resultados,
[FormattedPercentage] & " in " & [Ciudad],
", ",
[NumericPercentage], DESC
)

DEVOLUCIÓN
ResultString



Si esto responde a sus preguntas, acéptelo amablemente como una solución y felicite.

View solution in original post

6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

Hola @abhishek_2593

¿Puede probar los pasos a continuación?

1. Primero, crea una tabla para seleccionar los valores superiores
Ingresando manualmente (ingrese la opción de datos e ingrese un valor para cuánto desea en la parte superior)

2. Utilice el siguiente DAX para encontrar los N valores superiores

KPI de las principales ciudades =
VAR N = SELECTEDVALUE('Arriba'[arriba])
VAR Mesa de la ciudad =
RESUMIR(
«Cuadro (2)»,
«Cuadro (2)»[Ciudad],
"TotalFAN", CONTAR(«Cuadro (2)»[ID de ventilador])
)

VAR TotalFAN = CALCULAR(CONTAR(«Cuadro (2)»[ID de ventilador]))

VAR TopCitiesTable =
TOPN(N, Mesa de la ciudad, [TotalFAN], DESC)

VAR Tabla de resultados =
ADDCOLUMNS(
TopCitiesTable,
"Porcentaje", FORMATO(DIVIDIR([TotalFAN], TotalFAN), "0.0%")
)

VAR ResultString =
CONCATENATEX(
Tabla de resultados,
[Porcentaje] & " en " & [Ciudad],
", "
)

DEVOLUCIÓN
ResultString


Screenshot 2025-05-12 144843.png

Si esto responde a sus preguntas, acéptelo amablemente como una solución y felicite.

¡Esto es muy útil! Gracias.
¿Cómo puedo ordenar las respuestas en orden descendente de los %s y en líneas separadas en lugar de comas en el conjunto de resultados? @mdaatifraza5556

Hola @abhishek_2593

¿Puedes probar el siguiente DAX?

He modificado solo en (VAR ResultTable y VAR ResultString)

KPI de las principales ciudades =
VAR N = SELECTEDVALUE('Top'[top])
VAR CityTable =
RESUMIR(
«Cuadro (2)»,
'Tabla (2)'[Ciudad],
"TotalFAN", COUNT('Tabla (2)'[FAN ID])
)

VAR TotalFAN =
CALCULAR(CONTAR('Tabla (2)'[ID de FAN]))

VAR TopCitiesTable =
TOPN(N, CityTable, [TotalFAN], DESC)


Tabla de resultados del VAR =
ADDCOLUMNS(
TopCitiesTable,
"Porcentaje Numérico", DIVIDE([TotalFAN], TotalFAN),
"FormattedPercentage", FORMAT(DIVIDE([TotalFAN], TotalFAN), "0.0%")
)


VAR ResultString =
CONCATENATEX(
Tabla de resultados,
[FormattedPercentage] & " in " & [Ciudad],
", ",
[NumericPercentage], DESC
)

DEVOLUCIÓN
ResultString



Si esto responde a sus preguntas, acéptelo amablemente como una solución y felicite.

En lugar de comas, ¿puede probar el siguiente DAX en VAR ResultString para entrar en una nueva línea

VAR ResultString =
CONCATENATEX(
Tabla de resultados,
[FormattedPercentage] & " in " & [Ciudad],
UNICHAR(10),
[NumericPercentage], DESC
)


Si esto responde a sus preguntas, acéptelo amablemente como una solución y felicite.

Muchas gracias por la rápida respuesta 😀 @mdaatifraza5556

¡Esto es muy útil! Gracias.
¿Cómo puedo ordenar las respuestas en orden descendente de los %s y en líneas separadas en lugar de comas en el conjunto de resultados?

Helpful resources

Announcements
June 2025 Power BI Update Carousel

Power BI Monthly Update - June 2025

Check out the June 2025 Power BI update to learn about new features.

May 2025 Monthly Update

Fabric Community Update - May 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors