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

Be one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now

Reply
Anonymous
Not applicable

Una segmentación de datos para filtrar varias columnas y contar el número de registros de cada columna por separado

Hola

Tengo una tabla que muestra los datos en el siguiente formato:

Identificación únicaEstado actualEstado 1 Fecha de finalizaciónEstado 1 Semana de finalizaciónEstado 2 Fecha de finalizaciónEstado 2 Semana de finalización
AA13/20/202012
Off13/25/202013
Ca13/24/202013
Para23/20/2020123/21/202012
Ae23/25/2020133/27/2020

13

Y luego tengo dos medidas. Estas medidas cuentan el número total de identificadores únicos totales que tienen valores para cada fecha de finalización de estado.

Sin filtro, las medidas se verían así:

Recuento del Estado 1 a 5

Recuento del Estado 2 a 2

Lo que quiero es poder filtrar en función de la semana, para ver cuántos identificadores únicos de cada estado se completaron en una semana específica. Así que si seleccioné la semana 13 en la segmentación, las medidas serían:

Recuento del Estado 1 a 3

Recuento del Estado 2 a 1

Me pregunto si hay alguna manera de hacerlo en Power BI? ¿Quizás haya una manera de cambiar la estructura de los datos para que sea más fácil hacer algo como esto que no se me ocurre?

No puedo encontrarme con ningún post que haya tenido una pregunta similar antes en el pasado. Soy bienvenido a cualquier solución, incluso si es un montón de trabajo para mí para agregar en!

¡Gracias!

Andrew

1 ACCEPTED SOLUTION
V-lianl-msft
Community Support
Community Support

Hola @Andrew17 ,

Cree una nueva tabla de semanas no relacionada y utilíquela como segmentación de datos.

A continuación, cree medidas para contar el identificador único.

count_id1 =
IF (
    HASONEFILTER ( 'Table 2'[week] ),
    CALCULATE (
        COUNT ( 'Table'[Unique ID] ),
        FILTER (
            'Table',
            'Table'[Status 1 Completion Week] = SELECTEDVALUE ( 'Table 2'[week] )
        )
    ),
    CALCULATE (
        COUNT ( 'Table'[Unique ID] ),
        FILTER ( 'Table', NOT ( ISBLANK ( 'Table'[Status 1 Completion Week] ) ) )
    )
)

count_unique_id.PNG

Aquí está el ejemplo pbix.

Saludos
Liang
Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

5 REPLIES 5
V-lianl-msft
Community Support
Community Support

Hola @Andrew17 ,

Cree una nueva tabla de semanas no relacionada y utilíquela como segmentación de datos.

A continuación, cree medidas para contar el identificador único.

count_id1 =
IF (
    HASONEFILTER ( 'Table 2'[week] ),
    CALCULATE (
        COUNT ( 'Table'[Unique ID] ),
        FILTER (
            'Table',
            'Table'[Status 1 Completion Week] = SELECTEDVALUE ( 'Table 2'[week] )
        )
    ),
    CALCULATE (
        COUNT ( 'Table'[Unique ID] ),
        FILTER ( 'Table', NOT ( ISBLANK ( 'Table'[Status 1 Completion Week] ) ) )
    )
)

count_unique_id.PNG

Aquí está el ejemplo pbix.

Saludos
Liang
Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Anonymous
Not applicable

Hola @V-lianl-msft

Gracias de nuevo por su ayuda, he estado jugando con esta medida, y no puedo encontrar una manera de editarlo para mostrar varias semanas juntos debido a la función HASONEFILTER. Si quisiera mostrar tanto la semana 12 como la semana 13 (suponiendo que haya más semanas en el conjunto de datos), ¿cómo lo haría?

Anonymous
Not applicable

Esto es exactamente lo que necesitaba. Muchas gracias 🙂

Ashish_Mathur
Super User
Super User

Hola

Puede descargar mi archivo PBI desde aquí.

Espero que esto ayude.

Untitled.png


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
camargos88
Community Champion
Community Champion

Hola @Andrew17 ,

Pruebe este código en Transformar datos (Power Query) -> Editor avanzado:

Dejar
Fuente: Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WcnRU0lEyBGJjfSMDIDIyAPGNgIQCGMfqANU4IdSYwtUYo6pxRqgxwaXGBcg0wmYXUMAQSQCs2BWhGNVSoIA5kkBsLAA", BinaryEncoding.Base64), Compression.Deflate)), let _t á ((texto de tipo) meta [Serialized.Text ? true]) en la tabla de tipos ["Id. único" - _t, "Estado actual" - _t, "Estado 1 Fecha de finalización" , "_t, "Estado 1 Semana de finalización" , _t "Fecha de finalización del estado 2 _t _t" .
"Tipo modificado" ? Tabla.TransformColumnTypes(Fuente, "Identificador único", texto de tipo, "Estado actual", Int64.Tipo, "Fecha de finalización del estado 1", texto de tipo, "Estado 1 Semana de finalización", Int64.Tipo, "Fecha de finalización del estado 2", texto de tipo, "Estado 2 Semana de finalización", Int64.Type", Int64.Type", Int64.Type", Int64.Type", Int64.Type", Int64.Type, Int64.Type, Int64.Type, Int64.Type, Int64.Type, Int64.Type, Int64.Type, Int64.Type, Int64.Type, Int64.Type, Int64.Type Week, Int64.Type.
"Columnas sólo seleccionadas no pivotadas" - Tabla.Unpivot('Tipo cambiado',''Código de finalización'', "Estado 1 Semana de finalización", "Fecha de finalización del estado 2", "Estado 2 Semana de finalización","Atributo", "Valor"),
"Dividir columna por delimitador" - Table.SplitColumn('Unpivoted Only Selected Columns", "Attribute", Splitter.SplitTextByDelimiter(" ", QuoteStyle.Csv), á"Attribute.1", "Attribute.2", "Attribute.3", "Attribute.4"-),
"Changed Type1" ? Table.TransformColumnTypes("Split Column by Delimiter",-"Attribute.1", escriba text,"Attribute.2", Int64.Type,"Attribute.3", escriba text,, escriba text, "Attribute.4", escriba text?),
"Columnas eliminadas" ? Tabla.RemoveColumns("Changed Type1","Attribute.3"-),
"Columna pivote" á Table.Pivot(?"Columnas eliminadas", List.Distinct(?"Columnas eliminadas"[Atributo.4]), "Atributo.4", "Valor"),
"Valor reemplazado" ? Table.ReplaceValue(?"Columna pivotada"," ",null,Replacer.ReplaceValue,"Fecha"-),
"Tipo modificado con configuración regional" - Table.TransformColumnTypes('Valor reemplazado'', ''Fecha'', fecha de tipo', "en-US"),
"Changed Type2" ? Table.TransformColumnTypes("Changed Type with Locale", "Semana", Int64.Type, Int64.Type, Int64.Type, Int64.Type, Int64.Type, Int64.Type, Int64.Type, Int64,Type, Int64.Type, Int64.Type, Int64.Type, Int64.Type, Int64.
"Añadido personalizado" á Table.AddColumn('Changed Type2", "Status", cada [Attribute.1] & " " & Text.From([Attribute.2])), cada [Attribute.1] & " " & Text.From([Attribute.2])),
"Columnas reordenadas" á Table.ReorderColumns(''Added Custom'',''Id' único', "Current Status", "Status", "Attribute.1", "Attribute.2", "Date", "Week"'),
"Columnas eliminadas1" á Table.RemoveColumns(?"Columnas reordenadas", "Atributo.1", "Atributo.2",),
"Changed Type3" ? Table.TransformColumnTypes("Columnas eliminadas1", "Estado", tipo de texto)
En
"Tipo cambiado3"

Ricardo



Did I answer your question? Mark my post as a solution!

Proud to be a Super User!



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!

Dec Fabric Community Survey

We want your feedback!

Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.

ArunFabCon

Microsoft Fabric Community Conference 2025

Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.

Top Solution Authors
Top Kudoed Authors