March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe 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
Hola
Tengo una tabla que muestra los datos en el siguiente formato:
Identificación única | Estado actual | Estado 1 Fecha de finalización | Estado 1 Semana de finalización | Estado 2 Fecha de finalización | Estado 2 Semana de finalización |
AA | 1 | 3/20/2020 | 12 | ||
Off | 1 | 3/25/2020 | 13 | ||
Ca | 1 | 3/24/2020 | 13 | ||
Para | 2 | 3/20/2020 | 12 | 3/21/2020 | 12 |
Ae | 2 | 3/25/2020 | 13 | 3/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
Solved! Go to Solution.
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] ) ) )
)
)
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.
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] ) ) )
)
)
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.
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?
Esto es exactamente lo que necesitaba. Muchas gracias 🙂
Hola
Puede descargar mi archivo PBI desde aquí.
Espero que esto ayude.
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
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.
Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.