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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Fair-UL
Helper II
Helper II

Filtrar una columna por un valor específico en otra columna

Hola. Tengo esta tabla de datos simulada

ProyectoResultados
x1
x1
x1
x1
y1
y2
y1
y1
z1
z2
z

1

Quiero que el resultado sea el identificador de proyecto que solo tiene el valor 1. En este caso, debe ser el proyecto X. Voy a utilizar esto en la tarjeta de recuento y el gráfico de barras. ¡Gracias!

5 REPLIES 5
v-jingzhang
Community Support
Community Support

Hola @Fair-UL

Pruebe esta medida para lograr el identificador de proyecto con solo el valor 1.

Project_ID =

CALCULATE (

    IF (

        MINX ( Project, IF ( SELECTEDVALUE ( Project[Findings] ) = 1, 1, 0 ) ) = 1,

        SELECTEDVALUE ( Project[Project] ),

        BLANK ()

    ),

    ALLEXCEPT ( Project, Project[Project] )

)

v-jingzhang_0-1599196773792.png

O de otra manera en caso de que lo necesite, cree columnas calculadas para contar el número de valores para cada proyecto y marque si un proyecto tiene solo un valor 1. De este modo, puede usar filtros/cortadores u otros métodos para filtrar los proyectos con solo el valor 1.

Count Of Values =

CALCULATE (

    DISTINCTCOUNT ( Project[Findings] ),

    FILTER (

        Project,

        Project[Project]

            = EARLIER ( Project[Project] )

    )

)



Has Only Value 1 =

IF (

    AND ( Project[Count Of Values] = 1, Project[Findings] = 1 ),

    "Yes",

    BLANK()

)

v-jingzhang_1-1599196773799.png

Saludos

Equipo de apoyo a la comunidad _ Jing Zhang

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

mussaenda
Super User
Super User

Hola @Fair-UL,

Puede que esta no sea la mejor solución, pero logra lo que quieres:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WqlDSUTJUitUhxKpEYRlhEYOwqlBYRshisQA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Column2", Int64.Type}}),
    #"Sorted Rows" = Table.Sort(#"Changed Type",{{"Column1", Order.Ascending}, {"Column2", Order.Descending}}),
    #"Added Custom" = Table.AddColumn(#"Sorted Rows", "Custom", each if [Column2] = 2 then "Exclude"
else null),
    #"Filled Down" = Table.FillDown(#"Added Custom",{"Custom"})
in
    #"Filled Down"
AlexisOlson
Super User
Super User

Puede contar el número de proyectos de este tipo de este tipo:

CountProjectsWithOnly1Findings =
COUNTROWS (
    FILTER (
        VALUES ( MockData[project] ),
        CALCULATE ( SELECTEDVALUE ( MockData[Findings] ) ) = 1
    )
)

Tenga en cuenta que SELECTEDVALUE produce un espacio en blanco si hay varios valores.

He probado esta solución, pero me da todos los proyectos con valor 1. Necesito proyectos con valor 1 SOLAMENTE (lo que significa que si un proyecto tiene 1 y 2, no quiero que se cuente.

Es como si no quisiera que se contara nada en el área de intersección. Espero que esto esté claro ahora.

Gracias por la respuesta rápida y el DAX

Si un proyecto tiene 1 y 2, SELECTEDVALUE lanza un espacio en blanco y la condición debe fallar.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

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.