Definir análisis: clasificación de valores no coincidentes

Muchas preguntas analíticas requieren clasificar los registros por si existen en otra tabla. Por ejemplo, ¿qué porcentaje de libros tienen premios? De libros con premios, ¿qué porcentaje no tiene ventas?

Parte 1: ¿Qué porcentaje de libros tienen premios?

image 1 7

Numerador: Libros

con Premio Denominador: Todos los Libros

El numerador requiere un cálculo de tabla cruzada, mientras que el denominador se puede calcular solo a partir de la tabla Libro. Una buena práctica es llevar todos los cálculos a una sola tabla, por lo que es más fácil razonar sobre el nivel de detalle y el conjunto de registros incluidos en el cálculo.

Para encontrar libros con premios, esencialmente queremos marcar cada fila de la tabla Libro como Verdadero/Falso, lo que indica si el libro existe en la tabla Premio. Podemos calcular esto con un conjunto o una expresión de nivel de detalle.

Piense en la siguiente expresión de LoD como la tabla Libro que extrae el número de registros coincidentes de la tabla Premios. Si hay uno o más, entonces el libro tiene un premio.

image 2 4

Dado que la expresión LoD anterior pertenece a la tabla Libro, «1» representa un libro, según los consejos y trucos mostrados en el post anterior.

image 3 2

Parte 2: ¿Qué porcentaje de libros con premios no se venden?

image 4 1

Numerador: Libros con

Premios sin Denominador de Ventas: Libros con Premios

Para encontrar libros sin ventas, podemos traer el Número de Ventas a la tabla Libro para crear una bandera Verdadero/Falso por libro. Cuando el número de ventas por libro es 0, el libro no tiene ventas.

image 5 3

Tenga en cuenta que, dado que Sales está relacionado con Reservar a través de la tabla Edición, esto no nos dice por qué el libro no tiene ventas. Podría deberse a que el libro es inédito, o podría deberse a que el libro se publica pero no se vende. Sin embargo, los libros inéditos no pueden recibir premios, por lo que podemos suponer que los libros con premios que no tienen ventas son libros sin vender. Es importante comprender las relaciones de los datos para crear e interpretar con precisión los resultados de los cálculos.

Combinando esta expresión LoD con el LoD del ejemplo anterior, podemos calcular el porcentaje de libros con premios que no se venden.

image 6 1

Tenga en cuenta que mientras que las expresiones LoD se agrupan con su tabla, los cálculos agregados no se agrupan con ninguna tabla, porque su nivel de detalle solo se establece cuando se usan en una visualización.

 
 
 

 
 
 
 
 
 
 

Preguntas desambiguadoras: la medida, la fuente de la medida y la dimensión

El análisis de datos requiere traducir las preguntas empresariales en preguntas informáticas inequívocas.

Una pregunta de negocios podría ser: «¿Están de acuerdo los expertos y la población en general sobre qué libros son buenos?» Puede utilizar premios para determinar las opiniones y calificaciones de los expertos para determinar la opinión de la población general.

«¿Cuáles son las calificaciones medias por premio?» puede parecer una traducción razonable de la pregunta de negocios. Sin embargo, esto sigue siendo ambiguo porque las «calificaciones» son ambiguas. ¿Es la medida o es la tabla a la que pertenece la medida: la fuente de la medida?

Una pregunta más precisa es «¿Cuál es la calificación promedio para las opiniones relacionadas con cada premio?» (Esto ignora el libro.)

Una pregunta alternativa podría ser «¿Cuál es la calificación promedio de los libros que han ganado cada premio?» (Esto ignora el número de calificaciones que tiene cada libro.)

Estas preguntas dan respuestas diferentes. Las primeras preguntas ponderan todas las calificaciones por igual. Si un libro recibe todas las calificaciones, ese libro se representará desproporcionadamente. La segunda pregunta pondera todos los libros por igual, independientemente de cuántas calificaciones haya recibido cada uno. El primero es el promedio, mientras que el segundo es el promedio de la media.

Hay una relación de muchos a muchos entre calificaciones y premios, mientras que hay una relación de uno a varios de libros a premios. Comprender la cardinalidad en los datos puede ayudarle a elegir el nivel correcto de agregación para su pregunta. Si bien un cálculo puede ser lógica y matemáticamente válido, la corrección sólo se puede determinar con respecto a la pregunta prevista.

Valoración media de las opiniones relacionadas con cada premio

Dado que la medida de calificación proviene de una tabla con un registro por revisión, este resultado se da simplemente dividiendo las calificaciones promedio por premios.

gif 1 2

Valoración media de los libros que han ganado cada premio

Para calcular este resultado, debemos mover la calificación media a la tabla de libros.

image 7 1

Podemos lograr esto con una expresión LoD que calcula la calificación promedio por libro.

image 8 1

La fuente de esta nueva medida es Book, por lo tanto, la media de este cálculo dividida por la adjudicación da la respuesta deseada.

gif 2 2

Interpretar resultados: la medida, la fuente de la medida, la dimensión y la relación

Es útil tener en cuenta la medida,el origen de la medida,la dimensióny la relación al interpretar los resultados del análisis. Comprender las relaciones entre tablas es particularmente importante para interpretar el nivel de detalle de valores NULL no coincidentes.

La visualización de nuestro análisis anterior muestra que los expertos y la población en general a menudo no están de acuerdo. La mitad de los premios tienen calificaciones medias de libros más bajas que los librosno otorgados.

image 9 0

Para ver el alcance de las diferencias de opinión, ¿no sería bueno comparar la diferencia entre las calificaciones medias de los libros para cada premio y las calificaciones medias de los libros no premiados?

Cálculos entre tablas: Llevar cálculos de nivel de fila a una tabla común

Hay tres pasos necesarios para calcular esta diferencia entre filas agregadas:

  1. Aísle la medida para el nulo sin igual
  2. Replicar la medida nula sin igual en todos los premios
  3. Restar el resultado de la medida original
image 10

1. Aísle la medida para el nulo sin igual

Para el primer paso, puede tener la tentación de escribir el siguiente cálculo de nivel de fila entre tablas, que no devuelve datos.

image 11

Esto se debe a que los cálculos de nivel de fila entre tablas usan combinaciones internas, eliminando libros sin premios. La expresión ISNULL solo encontrará los valores que faltan, no los valores no coincidentes. El último consejo en el post anterior discute esto en detalle.

Una buena práctica para escribir cálculos de nivel de fila entre tablas es llevar todos los campos a una sola tabla. El motivo es que los cálculos de nivel de fila generan combinaciones de nivel de fila, creando una tabla implícita que es distinta de todas las tablas del modelo de datos. Incorporar todos los campos relevantes en la misma tabla antes de calcular el cálculo de nivel de fila facilita la razonar sobre el nivel de detalle y el conjunto de registros incluidos en el cálculo.

La calificación media por libro (el calco lod del ejemplo anterior) ya está en el nivel de detalle del libro. Sólo tenemos que hacer que ISNULL(Premio) resuelva también a nivel de libro atándolo a Book ID.

image 12

Encontrar premios nulos sin igual equivale a encontrar el conjunto de libros que tienen cero premios.

image 13 new

Este cálculo devuelve un valor único que es la calificación media de los libros que no tienen premios.

image 14 0

2. Replicar la medida nula sin igual

Una expresión EXCLUDE LoD replica el resultado en todos los premios.

image 15 0

This calculation repeats the value of the Isolate Null Measure calculation for every award—an intermediate step necessary to compute the differences.

image 16 0

3. Compute the difference

The final step is now a straightforward aggregate difference. Note that the recommendation to bring calculations to a common table applies specifically to row-level calculations. With aggregate calculations, it’s often preferable NOT to fix them to any level of detail so that they adapt to the context of the viz and its filters.

image 17 new

Este cálculo, cuando se visualiza por premio, mostrará la diferencia entre la calificación media de ese premio y la calificación media de los libros sin premio (el campo de réplica).

Ocultar el valor null da el resultado deseado. Si excluye el valor null, el campo de réplica (y, en consecuencia, la diferencia) se convierte en null porque se filtran los datos relevantes. Ocultar nos permite incluir datos en los cálculos, a la vez que los excluye de la visualización.

image 18
 
 
 

 
 
 
 
 
 
 

Por el agujero del conejo

Es posible que se pregunte por qué la expresión EXCLUDE LoD no replicó la medida de la fila nula no coincidente. La respuesta documentada es que las expresiones De LoD se evalúan en el nivel de fila y los cálculos de nivel de fila entre tablas usan combinaciones internas. Usted puede estar pensando, «Eso es tonto, ¿por qué no usar uniones externas?»

El punto de viñeta #1 la descripción del trabajo de gestión de productos se disculpa al cliente, ese momento es ahora. Construir un producto requiere responder desproporcionadamente a la pregunta: «¿Cuál es la peor opción?» Con las relaciones, esa pregunta se recorte repetidamente en el contexto de qué hacer con los valores nulos.

Hay dos tipos distintos de valores nulos.

  1. Valores que faltan:existe una fila, pero falta un valor para una columna.
  2. Valores inigualables:una combinación con otra tabla evoca la existencia de una fila.

Estos dos tipos de valores NULL tienen significados muy diferentes. Agrupar tanto como «datos sucios que todos hemos desarrollado un reflejo para excluir porque es difícil de pensar» es malo.

Una decisión que tuvimos que tomar es si los cálculos de nivel de fila en las tablas se producen antes o después de que se unen las tablas. Sería increíble si el software siempre podría elegir mágicamente el orden que quería, pero por desgracia, las computadoras implosionan bajo instrucciones ambiguas.

Decidimos ejecutar calcs de nivel de fila antes de la combinación, para que pueda distinguir entre los valores que faltan y los valores no coincidentes al utilizar la función ISNULL. Esto a veces puede dar resultados intuitivos de contador, como en la siguiente tabla. Con un calc de LoD que cuenta el número de premios por libro, puede identificar el valor nulo no coincidente.

image 19 0

If row-level calcs happened after the join, the only way to differentiate missing values from unmatched values would be to pre-compute them in your data, requiring custom SQL or duplicate copies of your data. We thought that would be far worse, so a side effect of the least worst option is that LoDs should be used instead of the ISNULL functions to identify unmatched values, as shown in the image above.

You may still be wondering why then, was the measure not replicated across the unmatched null in the EXCLUDE LoD expression, if LoDs are supposedly the saviour of nulls?

Los loDs solo pueden rescatar valores NULL no coincidentes que se pueden extraer en una tabla previa a la unión (uno de los rectángulos de la pestaña de datos). Los loDs son indefensos contra los valores NULL sin igual conjurados en tablas posteriores a la unión que solo existen en el espacio virtual. Nuestra última visualización parece tan real, pero es sólo una sombra de una mesa inexistente.

Si no estás moviendo los ojos o buscando rápidamente el botón de escape, ¡felicidades! Ha sobrevivido al proceso de selección del asesor de clientes. Ponte en contacto con el equipo de modelado de datos y cálculos PM en dmcpmteam (at) tableau (punto-com)! No tema el alias impersonal: somos un pequeño grupo de cuatro personas y nos encantaría obtener más información sobre lo que necesita de Tableau.

Resumen

Las relaciones exponen matices en sus datos que antes eran fáciles de pasar por alto, como

  1. El nivel de detalle de sus medidas
  2. Valores inigualables en todas las tablas
  3. La cardinalidad entre tablas
  4. El camino para llegar a una mesa de otra

Analizar los datos de manera eficaz es cuestión de hacer preguntas buenas y precisas e interpretar los resultados más allá de los nombres de campo. Si obtiene resultados que no esperaba, antes de profundizar en los archivos de registro SQL para obtener una explicación, asegúrese de que puede describir las relaciones en sus datos (y su pregunta) en inglés simple.

Traducido y tomado del blog de Tableau, realizado por :

Mas articulos interesantes :