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
Anonymous
Not applicable

Filtrado de columnas que contiene el valor

Hola, chicos

Me preguntaba si podías ayudar en esto. Tengo un conjunto de datos con elementos que a veces se etiquetan como Bloqueado. Quiero filtrar mi conjunto de datos hacia abajo para tener elementos que una vez han sido etiquetados como Bloqueados... sino también conservar los tiempos en que no fueron bloqueados.

Vea a continuación quiero encontrar una manera de filtrar la columna para conservar sólo la sección roja...

Untitled.png

¿Se puede hacer esto?

1 ACCEPTED SOLUTION
AlB
Community Champion
Community Champion

Hola @n123b

Por favor, siempre muestre sus datos de muestra en formato text-tabular además de (o en lugar de) las capturas de pantalla. Un límite de pantalla no permite a las personas copiar fácilmente los datos y ejecutar una prueba rápida y, por lo tanto, disminuye la probabilidad de que su pregunta sea respondida. Solo tiene que usar 'Copiar tabla' en Power BI y pegarla aquí. O, idealmente, compartir el pbix (cuidado con los datos confidenciales).

Coloque el siguiente código M en una consulta en blanco para ver los pasos basados en una tabla de origen simplificada:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMjQwUNJRMgRipVgdGNcIlWuMyjWBcY0NLQyNLZC1w0VAJjjl5Cdnp6agShjjkoCbaoTqIiNUFxmhusgIyUWxAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [WorkItemId = _t, ChangedDate = _t, TagNames = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"WorkItemId", Int64.Type}, {"ChangedDate", Int64.Type}, {"TagNames", type text}}),

    #"Filtered Rows" = Table.SelectRows(#"Changed Type", each List.Contains(Table.SelectRows(#"Changed Type", (inner)=> inner[WorkItemId]=[WorkItemId])[TagNames], "Blocked"))
in
    #"Filtered Rows"

También puede crear una nueva tabla calculada en DAX, aunque recomendaría la ruta PQ:

NewTable = 
FILTER( Table1, 
        CALCULATE(COUNT(Table1[TagNames]), Table1[TagNames] = "Blocked", ALLEXCEPT(Table1, Table1[WorkItemId])) > 0
)

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

View solution in original post

5 REPLIES 5
AlB
Community Champion
Community Champion

@n123b

NewTable2 =
FILTER (
    Table1,
    CALCULATE (
        COUNT ( Table1[TagNames] ),
        SEARCH ( "Blocked", Table1[TagNames], 1, 0 ) > 0,
        ALLEXCEPT ( Table1, Table1[WorkItemId] )
    ) > 0
)

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

Anonymous
Not applicable

@AlB ¿cuál tendría que ser el DAX actual (refiriéndose a la segunda parte de su respuesta) si quisiera incluir en cualquier momento que hubiera la palabra "bloqueado" (por ejemplo, si alguien usó la etiqueta 'bloqueado - datos') y para ello no distingue mayúsculas de minúsculas?

Anonymous
Not applicable

Gracias chicos, ambas de estas soluciones funcionan - agradecemos su ayuda. También añadí

"blocked", Comparer.OrdinalIgnoreCase)

A la primera respuesta, al igual que me di cuenta de que me perdí algunos con una mayúscula B 🙂

amitchandak
Super User
Super User

@n123b , Puede crear una nueva columna como esta y filtrar bloqueada


nueva columna ?
var _cnt - countx(filter(Table, [workitemid] ? earlier([workitemid]) && [Tagnames] ?"Blocked"), [workitemid])+0
devolución
if(_cnt >0 , "Blocked", Blank())

Join us as experts from around the world come together to shape the future of data and AI!
At the Microsoft Analytics Community Conference, global leaders and influential voices are stepping up to share their knowledge and help you master the latest in Microsoft Fabric, Copilot, and Purview.
️ November 12th-14th, 2024
 Online Event
Register Here
AlB
Community Champion
Community Champion

Hola @n123b

Por favor, siempre muestre sus datos de muestra en formato text-tabular además de (o en lugar de) las capturas de pantalla. Un límite de pantalla no permite a las personas copiar fácilmente los datos y ejecutar una prueba rápida y, por lo tanto, disminuye la probabilidad de que su pregunta sea respondida. Solo tiene que usar 'Copiar tabla' en Power BI y pegarla aquí. O, idealmente, compartir el pbix (cuidado con los datos confidenciales).

Coloque el siguiente código M en una consulta en blanco para ver los pasos basados en una tabla de origen simplificada:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMjQwUNJRMgRipVgdGNcIlWuMyjWBcY0NLQyNLZC1w0VAJjjl5Cdnp6agShjjkoCbaoTqIiNUFxmhusgIyUWxAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [WorkItemId = _t, ChangedDate = _t, TagNames = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"WorkItemId", Int64.Type}, {"ChangedDate", Int64.Type}, {"TagNames", type text}}),

    #"Filtered Rows" = Table.SelectRows(#"Changed Type", each List.Contains(Table.SelectRows(#"Changed Type", (inner)=> inner[WorkItemId]=[WorkItemId])[TagNames], "Blocked"))
in
    #"Filtered Rows"

También puede crear una nueva tabla calculada en DAX, aunque recomendaría la ruta PQ:

NewTable = 
FILTER( Table1, 
        CALCULATE(COUNT(Table1[TagNames]), Table1[TagNames] = "Blocked", ALLEXCEPT(Table1, Table1[WorkItemId])) > 0
)

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

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