Utilice la cortadora para filtrar valores en al menos 1 de 2 campos

Un usuario Pregunto ✅

Anónimo

En primer lugar, ¡gracias por querer ayudar!

Actualmente tengo datos que se parecen a esto:

Código del primer lado

Segundo código de sitio

Audio

Video

Audio pobre

Video deficiente

A B C

DEF

1

0

1

0

DEF

XYZ

2

2

1

1

XYZ

FGH

1

1

0

0

Me gustaría llevar los datos a algo como esto:

Código del sitio

Audio

Video

Audio pobre

Video deficiente

A B C

1

0

1

0

DEF

3

2

2

1

XYZ

3

3

1

1

FGH

1

1

0

0

En última instancia, esto me permitiría crear una segmentación que devuelva todos los datos de mi sitio elegido, independientemente de si fue el primer sitio, el segundo sitio o ambos (si ambos datos solo deben contarse una vez).

Soy bastante nuevo en Power BI, por lo que se agradecerían respuestas detalladas. ¡Gracias!

En respuesta a Anónimo

Hola @Anónimo

Solo necesitaba usar una función de resumen diferente. Pruebe esta tabla calculada en su lugar

New Table = 
VAR T1 =  UNION
        (
        SELECTCOLUMNS('Table1',"Site Code",[First Side Code],"A",[Audio] , "V",[Video] , "A Poor",[Audio Poor] , "V Poor",[Video Poor]),
        SELECTCOLUMNS('Table1',"Site Code",[Second Site Code],"A",[Audio] , "V",[Video] , "A Poor",[Audio Poor] , "V Poor",[Video Poor])
        )
RETURN
   GROUPBY(
       T1,
       [Site Code],
       "Audio",SUMX(CURRENTGROUP(),[A]),
       "Video",SUMX(CURRENTGROUP(),[V]),
       "Audio Poor",SUMX(CURRENTGROUP(),[A Poor]),
       "Video Poor",SUMX(CURRENTGROUP(),[V Poor])
       )

Hola @Anónimo

Esta tabla calculada se acerca, pero parece estar contando en exceso. ¿Tiene una regla especial que se aplicará cuando el artículo sea un código secundario? He adjuntado un archivo PBIX.

Table = 
SUMMARIZE(
    UNION
        (
        SELECTCOLUMNS('Table1',"Site Code",[First Side Code],"Audio",[Audio] , "Video",[Video] , "Audio Poor",[Audio Poor] , "Video Poor",[Video Poor]),
        SELECTCOLUMNS('Table1',"Site Code",[Second Site Code],"Audio",[Audio] , "Video",[Video] , "Audio Poor",[Audio Poor] , "Video Poor",[Video Poor])
        ),
        [Site Code],
        "Audio" , SUM(Table1[Audio]),
        "Video" , SUM('Table1'[Video]) ,
        "Audio Poor" , SUM('Table1'[Audio Poor]) ,
        "Video Poor" , SUM('Table1'[Video Poor])
        
        
        )

image.png

Anónimo

En respuesta a Phil_Seamark

¡Gracias @Phil_Seamark por intentarlo!

Para responder a su pregunta, simplemente es no.

¿Verlo como 2 tablas ayuda en algo?

Código del primer lado

Audio

Video

Audio pobre

Video deficiente

A B C

1

0

1

0

DEF

2

2

1

1

XYZ

1

1

0

0

Segundo código de sitio

Audio

Video

Audio pobre

Video deficiente

DEF

1

0

1

0

XYZ

2

2

1

1

FGH

1

1

0

0

Ashish_Mathur

En respuesta a Anónimo

Hola,

Si los datos están en dos tablas, simplemente se pueden agregar. La tabla adjunta se puede agrupar en la primera columna.

En respuesta a Anónimo

Hola @Anónimo

Solo necesitaba usar una función de resumen diferente. Pruebe esta tabla calculada en su lugar

New Table = 
VAR T1 =  UNION
        (
        SELECTCOLUMNS('Table1',"Site Code",[First Side Code],"A",[Audio] , "V",[Video] , "A Poor",[Audio Poor] , "V Poor",[Video Poor]),
        SELECTCOLUMNS('Table1',"Site Code",[Second Site Code],"A",[Audio] , "V",[Video] , "A Poor",[Audio Poor] , "V Poor",[Video Poor])
        )
RETURN
   GROUPBY(
       T1,
       [Site Code],
       "Audio",SUMX(CURRENTGROUP(),[A]),
       "Video",SUMX(CURRENTGROUP(),[V]),
       "Audio Poor",SUMX(CURRENTGROUP(),[A Poor]),
       "Video Poor",SUMX(CURRENTGROUP(),[V Poor])
       )

Anónimo

En respuesta a Phil_Seamark

@ Phil_Seamark- ¿pueden enviarme el archivo de actualización de Power BI?

En respuesta a Anónimo

Seguro,

Lo siento, debería haber agregado eso a mi respuesta anterior.

Anónimo

En respuesta a Phil_Seamark

Genial, muchas gracias @Phil_Seamark!

Si no le importa, tengo una pregunta más: de hecho, tengo muchas columnas y medidas adicionales en mi tabla original, ¿hay una forma más rápida de superarlas?

En respuesta a Anónimo

Puede probar el mismo enfoque en Power Query Editor.

Básicamente, haz dos copias de tu tabla fuente. Quitar el [First Site Code] columna de uno y luego el [Second Site Code] columna de la otra. Una vez hecho esto, puede agregar las dos consultas una encima de la otra. Esto no agregará las filas que aparecen en ambos, por lo que aún necesitará escribir algún código de «agrupación» en PQ o DAX, lo que prefiera.

Anónimo

En respuesta a Phil_Seamark

Creo que la agrupación está provocando que las filas que tienen el mismo sitio para el primero y el segundo se cuenten dos veces. En la pregunta original, mencioné que solo estaba buscando que estos se contaran una vez.

Intente agregar otra línea de datos a la tabla y verá:

data original.pngdoble conteo.png

En respuesta a Anónimo

Hola @Anónimo

Creo que solo necesitamos agregar un FILTRO a la segunda tabla en la función UNION de la siguiente manera

Table = 
VAR T1 =  UNION
        (
        SELECTCOLUMNS('Table1',"Site Code",[First Side Code],"A",[Audio] , "V",[Video] , "A Poor",[Audio Poor] , "V Poor",[Video Poor]),
        SELECTCOLUMNS(FILTER('Table1','Table1'[First Side Code]<>'Table1'[Second Site Code]),"Site Code",[Second Site Code],"A",[Audio] , "V",[Video] , "A Poor",[Audio Poor] , "V Poor",[Video Poor])
        )
RETURN
   GROUPBY(
       T1,
       [Site Code],
       "Audio",SUMX(CURRENTGROUP(),[A]),
       "Video",SUMX(CURRENTGROUP(),[V]),
       "Audio Poor",SUMX(CURRENTGROUP(),[A Poor]),
       "Video Poor",SUMX(CURRENTGROUP(),[V Poor])
       )

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *