Loading

Cada valor solo puede pertenecer a un grupo o categoría

Fecha de publicación: Jul 20, 2023
Descripción
No se puede asignar un miembro de dimensión a varios grupos o categorías.

Por ejemplo, todos los clientes deben estar asignados a la categoría de “compra poco” o “compra mucho”, en función de la cantidad de ventas. Además, algunos clientes deben tener una segunda categoría de “ganancias positivas” en función de las ganancias.

Cause

Tableau Desktop es un programa de solo lectura, por lo que no se pueden agregar filas adicionales para asignar un valor de dimensión a varios grupos o categorías.

Durante la escritura de un cálculo IF THEN, Tableau Desktop dejará de evaluar las condiciones cuando una de las condiciones se establezca en TRUE.
Solución
Todas las instrucciones siguientes parten de la hoja de trabajo "Original" en el libro de trabajo de ejemplo que se puede descargar desde el panel derecho de este artículo. Las instrucciones para crear la hoja de trabajo "Original" se incluyen en el libro de trabajo.

Opción 1: Crear un cálculo que devuelva los recuentos

  1. Elimine [Nombre de cliente], [Ventas] y [Ganancias] de la vista.
  2. Modifique [Categoría de cliente] para que todas las medidas agregadas se fijen al nombre del cliente. El cálculo final quedaría como sigue:
    IF { FIXED [Nombre de cliente] : SUM([Ganancias])} > 0
    THEN "ganancias positivas"
    ELSEIF { FIXED [Nombre de cliente] : SUM([Ventas])} > 5000
    THEN "compra mucho"
    ELSE "compra poco"
    END
  3. Cree un campo calculado con un nombre como Recuentos de categorías de cliente con un cálculo similar al siguiente:
    IF MIN([Categoría de cliente (fija)]) = "compra mucho"
    THEN SUM({ FIXED : COUNTD( IF {INCLUDE [Nombre de cliente]: SUM([Ventas])} >= 5000 THEN [Nombre de cliente] END )})
    
    ELSEIF  MIN([Categoría de cliente (fija)]) = "compra poco"
    THEN SUM({ FIXED : COUNTD( IF {INCLUDE [Nombre de cliente]: SUM([Ventas])} < 5000 THEN [Nombre de cliente] END )})
    
    ELSEIF  MIN([Categoría de cliente (fija)]) = "ganancias positivas"
    THEN SUM({ FIXED : COUNTD( IF {INCLUDE [Nombre de cliente]: SUM([Ganancias])} > 0 THEN [Nombre de cliente] END )})
     
    END
  4. Arrastre [Recuentos de categorías de cliente] al estante Filas y a Etiqueta en la tarjeta de marcas.

Opción 2: Crear varios cálculos de categorías

  1. Cree un cálculo independiente para cada conjunto de categorías que pudieran superponerse. En este ejemplo, un cliente solo “compra poco” O “compra mucho”, pero nunca ambas cosas, por lo que podemos combinar las dos condiciones en un cálculo. Los cálculos finales tendrían un aspecto similar a este:
    [Categoría de cliente ~ compra mucho/poco]:
    IF SUM([Ventas]) > 5000
    THEN "compra mucho"
    ELSE "compra poco"
    END
    [Categoría de cliente ~ ganancias positivas]:
    IF SUM([Ganancias]) > 0
    THEN "ganancias positivas"
    END
  2. Sustituya [Categoría de cliente] por [Categoría de cliente ~ compra mucho/poco] y [Categoría de cliente ~ ganancias positivas]

Opción 3: Unir una lista maestra de categorías

  1. Cree una tabla con una lista de todas las categorías posibles.
  2. Una la tabla original con la nueva lista de los cálculos combinados de 1=1.
  3. Cree un campo calculado con un nombre similar a Categoría de cliente con condiciones y un cálculo similar al siguiente:  
    IF [Categoría de cliente] = "compra mucho"
    AND { FIXED [Nombre de cliente], [Categoría de cliente] : SUM([Ventas]) } >= 5000
    THEN "compra mucho"
     
    ELSEIF [Categoría de cliente] = "ganancias"
    AND { FIXED [Nombre de cliente], [Categoría de cliente] : SUM([Ganancias]) } > 0
    THEN "ganancias positivas"
     
    ELSEIF [Categoría de cliente] = "compra poco"
    AND { FIXED [Nombre de cliente], [Categoría de cliente] : SUM([Ventas]) } < 5000
    THEN "compra poco"
     
    END
  4. Sustituya [Categoría de cliente] por [Categoría de cliente con condiciones]
Recursos adicionales
Notas sobre la opción 1:
  • Esta solución requiere que los datos subyacentes contengan al menos una fila para cada categoría. Además, cada categoría debe contener una fila que NO cumpla los criterios de ninguna de las categorías indicadas anteriormente en el cálculo. Por ejemplo, para que aparezcan los clientes que compran poco en la vista, debe haber al menos una fila de cliente que compra poco y que NO genere ganancias positivas ni compre mucho.
Notas sobre la opción 3:
  • Haga clic en la pestaña Fuente de datos en el libro de trabajo de ejemplo para ver cómo se configura esta unión.
  • Si no puede agregar una lista maestra de categorías como tabla en la fuente de datos original, puede, para más fuentes de datos, crear una tabla de texto y usar una unión de base de datos cruzada para unir la tabla de texto con la tabla original.
  • En el paso 2 se agrega una fila para cada categoría de cada registro del conjunto de datos subyacente. Esto significa que todos los clientes tienen las tres categorías.
  • Puesto que este método duplica los datos, recomendamos usarlo para crear una fuente de datos independiente solo para esta vista.

Número del artículo de conocimiento

001474113

Archivos adjuntos

group values into multiple groups.twbx

2465 KB

 
Cargando
Salesforce Help | Article