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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Anonymous
Not applicable

ALLSELECTED de la segmentación jerárquica

Hola

Tengo 10 columnas en mi tabla y creo una segmentación en formato jerárquico, como en el ejemplo siguiente:

cat1level_2Valor
cat1Valor
cat2level_2level_3level_4Valor
cat3level_2level_3Valor
cat4Valor

Tengo una segmentación jerárquica donde catX es la categoría principal, y por supuesto, necesito elegir valores múltiples. Traté de lograrlo cuando todos los niveles (padre-hijo tienen el mismo número de elementos), pero tengo matriz asimétrica (cada level_1 puede contener diferentes subniveles).

El problema es que resolví en parte mostrar en la tabla (y en el carrito como en las leyendas), cada valor elegido antes en la segmentación de datos, y, en primera instancia, creo una nueva columna como esta:

lastnoblankValue = SWITCH(TRUE();
            categories[tag_A.10]<>BLANK()categories[tag_A.10];
            categories[tag_A.9]<>BLANK();(categories[tag_A.9];
            categories[tag_A.8]<>BLANK();(categories[tag_A.8];
            categories[tag_A.7]<>BLANK();categories[tag_A.7];
            categories[tag_A.6]<>BLANK();categories[tag_A.6];
            categories[tag_A.5]<>BLANK();categories[tag_A.5];
            categories[tag_A.4]<>BLANK();(categories[tag_A.4];
            categories[tag_A.3]<>BLANK();(categories[tag_A.3];
            categories[tag_A.2]<>BLANK();categories[tag_A.2];
            BLANK()

Logro mostrar el último valor no en blanco. Por lo tanto, cuando elijo un elemento de la segmentación de datos tengo una referencia.

Pero obtengo solo cada valor en cada nivel, no todo en caso de que seleccioné varios valores por cada categoría.

Si elijo

¿Es posible? ¿Cómo puedo lograrlo?

Gracias

6 REPLIES 6
Anonymous
Not applicable

Hola

Explico de nuevo el problema de seguir, así que reescribo este post porque descubrí el problema.

Las últimas columnas noblank son value y necesito extraerla para volver a indexar y crear la columna sin pivotar correcta o crear una segmentación de datos con menos niveles en el menú de jerarquía. (Necesito calcular después de la conversión y poner los valores en el gráfico, la matriz y la leyenda).

1)

Tengo originalmente esta tabla:

catAcatA-subI-subIII-subIII-subIV-val1
catBcatB-subI-val2
catCcatC-subI-sub2-sub3-sub4-sub5-val3

2)

Después de dividir columnas tengo categoría y subniveles (padre e hijo) como este formato:

catAcatASufridosubIIsubIIIsubIVval1
catBcatBSufridoval2
catCcatCSufridosub2sub3sub4sub5val3

3)

Si extraijo el valor lastnoblank, tomo solo VALUES y estos reducen los niveles jerárquicos en mis segmentaciones de datos. Así que finalmente con las columnas calculadas que tengo:

lastnoblankValue = SWITCH(TRUE();
            categories[tag_A.10]<>BLANK()categories[tag_A.10];
            categories[tag_A.9]<>BLANK();(categories[tag_A.9];
            categories[tag_A.8]<>BLANK();(categories[tag_A.8];
            categories[tag_A.7]<>BLANK();categories[tag_A.7];
            categories[tag_A.6]<>BLANK();categories[tag_A.6];
            categories[tag_A.5]<>BLANK();categories[tag_A.5];
            categories[tag_A.4]<>BLANK();(categories[tag_A.4];
            categories[tag_A.3]<>BLANK();(categories[tag_A.3];
            categories[tag_A.2]<>BLANK();categories[tag_A.2];
            BLANK()

Este colum es válido, porque tengo lastnoblank valor de cada fila.

Ahora, ¿Podría quitar estos valores de las columnas? Vi funciones M de consulta de energía que transforman columnas o lista, y creo una nueva columna como (sin valores):

catAcatASufridosubIIsubIIIsubIV
catBcatBSufrido
catCcatCSufridosub2sub3sub4sub5

¿Es posible lograrlo?

El resultado final será:

Aparece En segmentación de datos:

catA > val1

catB > val2

catC > val3

Si se selecciona el primero:

Aparece En leyenda:

subI > subII > subIII > subIV > val1

En la tabla Matriz aparece:

val1

Anonymous
Not applicable

En anexo mi resultado final (se ha modificado para lograr el resultado esperado).

https://1drv.ms/u/s!AofhffESINwYh0Q9IoYbk2avRCCb?e=TxRrxK

Manualmente rescreo un nuevo excel con solo valores extraídos de columnas divididas, dejo columnas en blanco (originalmente se fusionó). Ahora, cuando creo segmentación de datos, matriz y Leyendas puedo mostrar mis resultados esperados.

Importante : Tabla original dela base de datos, las columnas combinadas son categorías anidadas, subniveles y valores, por esta razón necesito extraer el valor lastnoblank, eliminar de las columnas y manipular la segmentación de jerarquía.

v-alq-msft
Community Support
Community Support

Hola, @frikkiland

¿Podría mostrarnos algunos datos de muestra y resultados esperados con One Drive para empresas? Enmascare los datos confidenciales antes de cargarlos.

Saludos

Allan

amitchandak
Super User
Super User

isblank([columna]) es una función comprobar valores en blanco

Anonymous
Not applicable

Hola @amitchandak gracias, pero no resuelve mi problema.

Puse código arriba en una nueva columna y ahora obtiene el último valor por cada fila (varias columnas reducidas en una sola). Funciona bien, pero cuando selecciono estas columnas en matriz o gráfico en leyendas, cuando selecciono uno o más elementos en segmentación de datos, solo muestra elementos por cada nivel, si selecciono uno por categoría A y uno en la categoría C (y comparto los mismos niveles) , la fórmula sólo obtiene uno por niveles...

¿Necesitas más información o captura de pantalla?

Sí. Además, la producción esperada

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

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