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

Data Days is here! Join us now for 60+ days of learning, challenges, and connection. Learn more

Reply
Syndicate_Admin
Administrator
Administrator

Marcar o categorizar a un cliente

Hola amigos,

Mi primera vez publicando aquí y soy nuevo en DAX.

Estoy luchando con este escenario específico y he pasado horas en él. Esperando que alguien pueda ayudar.

Tengo una tabla llamada Cliente y contiene el número de cliente. Esta tabla está relacionada con otra tabla llamada Suscripciones a través del número de cliente. La tabla Suscripción se conecta a la Tabla de productos a través de una clave de producto.

Estoy tratando de etiquetar o categorizar a los clientes en función de las banderas de producto (4 columnas de Prodcut diferentes con valores de 1 o 0). Un 1 significa que el cliente se ha suscrito a ese Producto. Algunos clientes se han suscrito a más de 1 Producto (o una combinación de Productos).

Quiero categorizar a los clientes basándome en lo siguiente. Por lo tanto, esencialmente, un Cliente único puede clasificarse en función de una combinación única de Productos.

Categoría A =Producto AProducto BProducto CProducto D
Categoría B =Producto AProducto BProducto C
Categoría C =Producto AProducto B

La salida en una tabla visual se vería como

CategoríaRecuento de clientes
Categoría A =100
Categoría B =50
Categoría C =20
3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Puede crear una medida separada para cada categoría como

Category B =
VAR CategoryFilter =
    TREATAS (
        { ( 1, 1, 1, 0 ) },
        'Product'[Product A],
        'Product'[Product B],
        'Product'[Product C],
        'Product'[Product D]
    )
RETURN
    CALCULATE ( DISTINCTCOUNT ( 'Subscriptions'[Customer ID] ), CategoryFilter )

Tendría que especificar un 0 o 1 para cada columna para asegurarse de que, por ejemplo, las personas de la categoría A no se contaran dos veces en las otras categorías.

Gracias por su respuesta @johnt75

Le di una oportunidad a esto y lo visual no funcionó. No estoy seguro de cómo decodificarlo. El valor de las banderas de producto está en formato de texto (por lo que 1 y 0) están en formato de texto.

Pensando en una solución alernativa y preguntándome si podría etiquetar a los clientes de alguna manera, es decir, el Cliente 1 está etiquetado como A | B | C (ya que se han suscrito al Producto A, B Y C).

Puede intentar agregar una columna de categoría como

Customer Category =
VAR ProdA =
    SUMX (
        RELATEDTABLE ( Subscription ),
        VALUE ( RELATED ( 'Product'[Product A] ) )
    )
VAR ProdB =
    SUMX (
        RELATEDTABLE ( Subscription ),
        VALUE ( RELATED ( 'Product'[Product B] ) )
    )
VAR ProdC =
    SUMX (
        RELATEDTABLE ( Subscription ),
        VALUE ( RELATED ( 'Product'[Product C] ) )
    )
VAR ProdD =
    SUMX (
        RELATEDTABLE ( Subscription ),
        VALUE ( RELATED ( 'Product'[Product D] ) )
    )
VAR Result =
    SWITCH (
        TRUE (),
        ProdA >= 1
            && ProdB >= 1
            && ProdC >= 1
            && ProdD >= 1, "A|B|C|D",
        ProdA >= 1
            && ProdB >= 1
            && ProdC >= 1, "A|B|C",
        ProdA >= 1
            && ProdB >= 1, "A|B",
        "Default category"
    )
RETURN
    Result

Helpful resources

Announcements
Fabric Data Days is here Carousel

Fabric Data Days 2026

Don't miss out on Data Days, June 15 through August 7. Learn Fabric, Power BI, SQL, AI and more.

May Power BI Update Carousel

Power BI Monthly Update - May 2026

Check out the May 2026 Power BI update to learn about new features.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.

Top Kudoed Authors