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

Don'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.

Reply
Syndicate_Admin
Administrator
Administrator

Ordenación de rangos de números

Tengo la siguiente tabla donde los porcentajes (4%, 5%, 10%, 15%, etc.) fueron creados por una instrucción switch. Luego agrupé esos porcentajes en rangos como se muestra a continuación. Para obtener los rangos en el orden correcto, intenté otra instrucción switch y otra agrupación, pero ambas produjeron un error. ¿Cómo puedo colocar estos rangos en el orden correcto? Gracias.

cheid_4838_0-1738027899967.png

Agrupación inactiva = INTERRUPTOR(
VERDADERO(),
'Largo ralentí'[% de inactividad prolongada] <.05,".04",
'Largo ralentí'[% de inactividad prolongada] >=.05 && 'Largo ralentí'[% de inactividad prolongada] <.10, ".05",
'Largo ralentí'[% de inactividad prolongada] >=.10 && 'Largo ralentí'[% de inactividad prolongada] <.15, ".10",
'Largo ralentí'[% de inactividad prolongada] >=.15 && 'Largo ralentí'[% de inactividad prolongada] <.20, ".15",
'Largo ralentí'[% de inactividad prolongada] >=.20 && 'Largo ralentí'[% de inactividad prolongada] <.40, ".20",
'Largo ralentí'[% de inactividad prolongada] >=.40 && 'Largo ralentí'[% de inactividad prolongada] <.60, ".40",
'Largo ralentí'[% de inactividad prolongada] >=.60 && 'Largo ralentí'[% de inactividad prolongada] <.80, ".60",
'Largo ralentí'[% de inactividad prolongada] >.80, ".80",
"OTROS")

12 REPLIES 12
Syndicate_Admin
Administrator
Administrator

Hola @cheid_4838

La agrupación inactiva se ordena en el orden correcto > como si viera que todas las categorías abiertas tienen la clasificación adecuada en orden asc.

Uzi2019_1-1738044486606.png

Por lo tanto, creo que no es necesario arreglar su agrupación inactiva porque su jerarquía principal no está ordenada.

Tienes que arreglar tu subgrupo inactivo que es la columna de texto.

En la columna de texto se ordenará Aplabbísticamente. Por lo tanto, el 10-20% será el primero debido a la secuencia numérica 1, 2, 3, 4, 5.

Por lo tanto, el orden de clasificación es 10,4,40

¡Espero haber respondido a tu pregunta!

Hola @cheid_4838

Pruebe esta columna calculada

Orden=

INTERRUPTOR(
VERDADERO(),
'Subgrupo inactivo' = 4% - 5% ,1,
'Subgrupo inactivo' = 10% - 20%, 2,

'Subgrupo inactivo' = 40% - 50%, 3,

4) ------- para otros

Espero que esto te ayude a ordenar el orden.

Seleccione el subgrupo inactivo

vaya a la pestaña Herramientas de columna y, a continuación, haga clic en ordenar por columna

Seleccione la columna de criterio de clasificación

¡Espero haber respondido a tu pregunta!

Utilicé esta lógica para crear el subgrupo, pero recibo el siguiente mensaje de error cuando ordeno por la lógica de orden.

Subgrupo inactivo = INTERRUPTOR(
VERDADERO(),
'Largo ralentí'[% de inactividad prolongada] <.05,"4% - 5%",
'Largo ralentí'[% de inactividad prolongada] >=.05 && 'Largo ralentí'[% de inactividad prolongada] <.10, "4% - 5%",
'Largo ralentí'[% de inactividad prolongada] >=.10 && 'Largo ralentí'[% de inactividad prolongada] <.15, "10% - 20%",
'Largo ralentí'[% de inactividad prolongada] >=.15 && 'Largo ralentí'[% de inactividad prolongada] <.20, "10% - 20%",
'Largo ralentí'[% de inactividad prolongada] >=.20 && 'Largo ralentí'[% de inactividad prolongada] <.40, "10% - 20%",
'Largo ralentí'[% de inactividad prolongada] >=.40 && 'Largo ralentí'[% de inactividad prolongada] <.60, "40% - 100%",
'Largo ralentí'[% de inactividad prolongada] >=.60 && 'Largo ralentí'[% de inactividad prolongada] <.80, "40% - 100%",
'Largo ralentí'[% de inactividad prolongada] >.80, "40% - 100%",
"OTROS")

Orden =
INTERRUPTOR(
VERDADERO(),
'Inactivo prolongado' [Subgrupo inactivo] = "4% - 5%",1,
'Inactividad prolongada' [Subgrupo inactivo] = "10% - 20%",2,
'Inactividad prolongada' [Subgrupo inactivo] = "40% - 100%",3,
0)

cheid_4838_1-1738067180062.png

Hola @cheid_4838

Para su comprensión, la subagrupación inactiva se clasifica en función de la columna de texto, no numérica, por lo que el orden de clasificación es 1,4,4, esto es lo que sigue debido a la clasificación alfanumérica.

Tomando 1 elemento de cada palabra y luego ordenar.

Espero que esto les dé claridad.

Eso es con lo que estoy teniendo problemas. Necesito que estos rangos se coloquen en el orden correcto, pero nada funciona. He probado de todo, desde usar el interruptor para crear el pedido hasta agrupar. Cada vez que recibo un mensaje de error de dependencia circular que indica que no puedo comparar el texto con los números. No estoy seguro de cuáles son mis otras opciones.

cheid_4838_2-1738067451170.png

Hola @cheid_4838

¿Puedes cambiar tu texto numérico?

Subgrupo inactivo = INTERRUPTOR(
VERDADERO(),
'Largo ralentí'[% de inactividad prolongada] <.05,"1. 4% - 5%",
'Largo ralentí'[% de inactividad prolongada] >=.05 && 'Largo ralentí'[% de inactividad prolongada] <.10, "1. 4% - 5%",
'Largo ralentí'[% de inactividad prolongada] >=.10 && 'Largo ralentí'[% de inactividad prolongada] <.15, "2. 10% - 20%",
'Largo ralentí'[% de inactividad prolongada] >=.15 && 'Largo ralentí'[% de inactividad prolongada] <.20, "2. 10% - 20%",
'Largo ralentí'[% de inactividad prolongada] >=.20 && 'Largo ralentí'[% de inactividad prolongada] <.40, "2. 10% - 20%",
'Largo ralentí'[% de inactividad prolongada] >=.40 && 'Largo ralentí'[% de inactividad prolongada] <.60, "3. 40% - 100%",
'Largo ralentí'[% de inactividad prolongada] >=.60 && 'Largo ralentí'[% de inactividad prolongada] <.80, "3. 40% - 100%",
'Largo ralentí'[% de inactividad prolongada] >.80, "4. 40% - 100%",
"OTROS")
Pruebe esto, ordena automáticamente sin crear otra medida de clasificación.

Estaba pensando eso, pero tratando de evitar poner un número inicial para impulsar el tipo. Gracias por tu ayuda.

Hola @cheid_4838

O puede tener una tabla separada con subgrupos inactivos y orden de clasificación.

Cree una relación entre su subagrupación inactiva y la subagrupación de tabla dyou.

Utilice la subagrupación inactiva de una tabla independiente recién creada. Asegúrese de aplicar el paso Ordenar por orden en el sub manoseo inactivo (nueva tabla).

Utilice solo la subagrupación inactiva de la nueva columna de descanso de tabla de la tabla anterior.

¡Espero que esto te ayude!

Gracias por esa sugerencia. Estaba pensando eso, pero quería agotar mis esfuerzos tratando de encontrar una lógica que funcionara. Gracias por tu ayuda.

Syndicate_Admin
Administrator
Administrator

Pruebe esto:

Orden de clasificación =
INTERRUPTOR(
VERDADERO(),
'Long Idle' [Long Idle %] < .05, 1,
'Long Idle' [Long Idle %] >= .05 && 'Long Idle'[Long Idle %] < .10, 2,
'Long Idle' [Long Idle %] >= .10 && 'Long Idle'[Long Idle %] < .15, 3,
'Long Idle' [Long Idle %] >= .15 && 'Long Idle'[Long Idle %] < .20, 4,
'Long Idle' [Long Idle %] >= .20 && 'Long Idle'[Long Idle %] < .40, 5,
'Long Idle' [Long Idle %] >= .40 && 'Long Idle' [Long Idle %] < .60, 6,
'Long Idle' [Long Idle %] >= .60 && 'Long Idle'[Long Idle %] < .80, 7,
'Long Idle' [Long Idle %] > .80, 8,
9 -- "OTROS"
)

After creating the SortOrder column:

  1. Vaya al panel Campos .
  2. Select the Idle Grouping column.
  3. En la pestaña Herramientas de columna de la cinta de opciones, haga clic en Ordenar por columna.
  4. Select the SortOrder column.

This ensures the ranges in Idle Grouping are displayed in the correct order in visuals.

Creé esta lógica para crear el subgrupo y luego la segunda lógica para crear el pedido. Cuando hago esto, recibo este mensaje de error.

cheid_4838_3-1738067764156.png

Subgrupo inactivo = INTERRUPTOR(
VERDADERO(),
'Largo ralentí'[% de inactividad prolongada] <.05,"4% - 5%",
'Largo ralentí'[% de inactividad prolongada] >=.05 && 'Largo ralentí'[% de inactividad prolongada] <.10, "4% - 5%",
'Largo ralentí'[% de inactividad prolongada] >=.10 && 'Largo ralentí'[% de inactividad prolongada] <.15, "10% - 20%",
'Largo ralentí'[% de inactividad prolongada] >=.15 && 'Largo ralentí'[% de inactividad prolongada] <.20, "10% - 20%",
'Largo ralentí'[% de inactividad prolongada] >=.20 && 'Largo ralentí'[% de inactividad prolongada] <.40, "10% - 20%",
'Largo ralentí'[% de inactividad prolongada] >=.40 && 'Largo ralentí'[% de inactividad prolongada] <.60, "40% - 100%",
'Largo ralentí'[% de inactividad prolongada] >=.60 && 'Largo ralentí'[% de inactividad prolongada] <.80, "40% - 100%",
'Largo ralentí'[% de inactividad prolongada] >.80, "40% - 100%",
"OTROS")
Criterio de clasificación
Orden =
INTERRUPTOR(
VERDADERO(),
'Largo ralentí'[Subgrupo inactivo] = "4% - 5%", 1,
'Largo ralentí'[Subgrupo inactivo] = "10% - 20%", 2,
'Largo ralentí'[Subgrupo inactivo] = "40% - 100%", 3,
0)

Cree una columna a través de Power Query (Transform Data) para evitar el error de dependencia circular.

  • Abrir el Editor de Power Query
  • Agregue una nueva columna para ordenar:
    1. Vaya a la pestaña Agregar columna .
    2. Utilice una fórmula personalizada o una lógica de columna condicional.

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

Jan25PBI_Carousel

Power BI Monthly Update - January 2025

Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.

Jan NL Carousel

Fabric Community Update - January 2025

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

Top Solution Authors