Habilidades de Power BI: pensar en datos en tablas

Share on facebook
Share on twitter
Share on linkedin
Share on telegram
Share on whatsapp

Contenidos

Nivel: principiantes

Un concepto muy importante con el que los usuarios de Excel a menudo luchan cuando comienzan su viaje de Power BI y Power Pivot es que necesitan aprender a pensar en datos en tablas en lugar de pensar en datos en celdas. En el mundo de las hojas de cálculo, cada celda puede tener una fórmula o valor diferente, pero en los mundos Power BI y Power Pivot, no funciona de esta manera.

El camino de Excel

La forma de Excel es muy sencilla. Carga datos en la hoja de cálculo: cada celda de la hoja de cálculo contiene un elemento de datos (un valor escalar). Desde allí, puede escribir una fórmula en una sola celda (consulte la celda E2 a continuación).

standard-excel_thumb-4161684

Si desea que la misma fórmula aparezca muchas veces en su hoja de cálculo, copie la fórmula hacia abajo en la página. El punto clave aquí es que cada celda en el ejemplo anterior es un valor escalar o una fórmula individual que devuelve un valor escalar. Así es como funciona el Excel tradicional y es por eso que la gente de Excel nos sentimos cómodos pensando en los datos de esta manera.

Pero, ¿qué pasa con las tablas de Excel que le oigo decir?

Sí, buen punto. En algún momento del pasado, Excel recibió una objeto de tabla como parte de su conjunto de herramientas. Muchos usuarios de Excel no los conocen y, por lo tanto, no los usan. Las tablas de Excel resuelven bastantes problemas en comparación con los rangos de celdas de Excel, que incluyen:

  • permitiéndole escribir una sola fórmula y hacer que esa fórmula se aplique a toda la columna de la tabla
  • extender las fórmulas en la tabla cuando se agregan nuevas filas a la tabla
  • extender una referencia (como una referencia de origen de tabla dinámica) para que apunte a una tabla (que puede cambiar de tamaño y forma) en lugar de apuntar a un rango estático de celdas.

A continuación, convierto el mismo rango de Excel de la primera imagen en una tabla de Excel. Tenga en cuenta que ahora solo necesito agregar una fórmula única para crear «Impuesto sobre ventas». La fórmula única ahora se aplica a toda la tabla.

excel-tables_thumb-3552466

Cuando tenga una tabla de Excel como la anterior, puede comenzar a referirse a toda la tabla o columnas en otras fórmulas de su hoja de cálculo. Vea en la imagen a continuación cómo la fórmula en la celda G3 se refiere a una sola columna en la tabla. A medida que la tabla crece, no es necesario cambiar la fórmula, simplemente funciona.

refer-to-columns_thumb-6697353

Este uso de tablas en Excel como se muestra arriba es muy similar a cómo funciona en Power Pivot y Power BI. Ya no piensa en grupos de celdas y, en su lugar, debe considerar la tabla o columna completa.

Paso 1: pensar en datos en tablas en Power Pivot

Las cosas clave que necesita saber mientras aprende a pensar en datos en tablas en Power Pivot son:

  1. Las medidas se escriben para operar en todo el modelo de datos. Puede (y normalmente lo hace) obtener una respuesta diferente a la misma fórmula según el filtrado que se aplique actualmente a las columnas, tablas y elementos visuales en su modelo de datos / informe.
  2. No puede hacer referencia directamente a filas en una tabla. La única forma de hacer referencia a filas específicas es primero «filtrar» la tabla para que las filas a las que desea acceder sean «visibles» (y todas las filas que no desea sean «no visibles»). Después de aplicar el filtro, la medida o columna calculada (mencionada en el punto 1 anterior) funcionará para la copia filtrada de la tabla (es un poco más complicado que eso para las columnas calculadas, pero eso está más allá del alcance de este artículo) .
  3. Debe aprender a «imaginar» cómo se ve la tabla con los filtros aplicados. La razón por la que necesita aprender esta habilidad es porque muchas de las tablas que usará en las fórmulas de DAX son ‘tablas virtuales’, es decir, la tabla nunca se materializa de una manera que pueda verla. Debe aprender a «imaginar» cómo se ve la tabla en su estado filtrado. Escribí una publicación de blog en powerpivotpro.com que explica cómo puede usar Power BI para materializar físicamente estas tablas virtuales en “tablas de prueba” temporales para ayudarlo a comenzar su viaje para poder visualizar lo que está sucediendo. Una vez que lo domine, solo necesitará materializar una tabla cuando no pueda averiguar por qué su fórmula no funciona o si hay una pregunta específica que es demasiado difícil de responder sin mirar (como la pregunta 5 que veremos más adelante en esta publicación).

Aquí hay algo de práctica de imaginación para ti.

Imagine que tiene una tabla de calendario que contiene todas las fechas desde el 1 de enero de 2010 hasta el 31 de diciembre de 2016, así como columnas para [Day Name], [Month Name] y [Year]. Se vería más o menos así.

image_thumb-7309159

Esta tabla, por supuesto, tendría más de 2500 filas. Imagine esta tabla en su mente (por ejemplo, deje de mirar la imagen de arriba). Ahora imagine lo que sucedería si aplicara un filtro en la columna Año para que sea igual a 2012 y otro filtro en la columna Nombre del mes sea febrero. Una vez que haya aplicado estos filtros en su mente, responda las siguientes preguntas refiriéndose a su tabla imaginaria en tu mente.

  1. ¿Cómo se vería la mesa ahora?
  2. ¿Cuántas filas hay visibles en esta tabla con estos 2 filtros aplicados?

Paso 2: pensar en los datos en columnas

Además de dominar las tablas, necesita dominar las columnas. Aquí hay algunas preguntas adicionales para su tabla imaginaria; esta vez las preguntas son sobre columnas.

  1. ¿Cuántos valores únicos aparecen ahora en la columna Nombre del mes?
  2. ¿Cuántos valores únicos aparecen ahora en la columna Nombre del día?
  3. ¿Cuál es la fecha mínima que existe en la columna Fecha?
  4. ¿Cuál es la fecha máxima que existe en la columna Fecha?
  5. ¿Cuál es el nombre del día para la última fecha en esta tabla filtrada?

Las respuestas están al final de la página. Pero hágase un favor y responda cada pregunta usted mismo sin hacer trampas; esto le ayudará a comprender qué tan hábil es para pensar en datos en tablas y columnas utilizando el ojo de la mente. De hecho, no espero que puedas responder al número 5 sin investigar un poco.

La razón por la que necesita pensar en columnas de datos es doble.

  • Muchas de sus fórmulas funcionarán en una o varias columnas.
  • Power Pivot es una base de datos en columnas y está optimizada para trabajar con columnas.

Como regla general, es más eficaz aplicar filtros a columnas individuales de uno en uno en lugar de aplicar filtros a varias columnas al mismo tiempo. Considere las siguientes dos medidas.

Count of days inefficient = 
    CALCULATE(
         COUNTROWS('Calendar'),
         FILTER('Calendar','Calendar'[Year] = 2012 && 'Calendar'[Month Name] = “Feb”)
    )
Count of days efficient = 
    CALCULATE(
        COUNTROWS('Calendar'),
        FILTER('Calendar','Calendar'[Year] = 2012),
        FILTER('Calendar','Calendar'[Month Name] = “Feb”)
    )

La segunda fórmula es mucho más eficiente porque hay 2 filtros separados que se aplican a 2 columnas separadas y se aplican uno a la vez (en un Y lógico). Esto es mucho más eficiente que pedirle a Power Pivot que considere ambas columnas al mismo tiempo.

Tenga en cuenta que las funciones de FILTRO en estas dos medidas sobre todo devuelven una copia filtrada de la tabla de calendario. No puede ver la copia de filtro de la tabla y eso puede dificultar la comprensión de lo que está sucediendo. Pero si aprende a imaginar cómo se ven las tablas en su estado filtrado, estará en camino de convertirse en una súper estrella de DAX.

super-charge-power-bi-ad_1-1024x128-6595595

    Paso 3: pensar en todo el modelo de datos

    Lo último que debe aprender es que todo el modelo de datos funciona como un ecosistema cerrado. En el modelo de datos que se muestra a continuación, hay 4 tablas de búsqueda en la parte superior de la imagen y 2 tablas de datos en la parte inferior (de Adventure Works).image_thumb-4-5537744

    Las 6 tablas funcionan como un solo sistema. Los filtros aplicados a las tablas de búsqueda se propagan cuesta abajo desde la parte superior (un lado de la relación) hasta la parte inferior (muchos lados de la relación). Los filtros no se propagan automáticamente de abajo hacia arriba. Entonces, una vez que aprenda a pensar en cómo el filtrado afectará a una sola tabla, deberá dar un paso más para imaginar cómo se propagarán los filtros a todas las demás tablas del modelo de datos.

    Respuestas a los cuestionarios anteriores

    Mesas

    1. ¿Cómo se vería la mesa ahora? Todavía tendría 4 columnas, pero ahora solo tiene 29 filas.
    2. ¿Cuántas filas hay visibles en esta tabla con los filtros aplicados? 29.

    Columnas

    1. ¿Cuántos valores únicos aparecen en la columna Nombre del mes? 1 de febrero
    2. ¿Cuántos valores únicos aparecen en la columna Nombre del día? 7, los días de sol a sábado
    3. ¿Cuál es la fecha mínima que existe en la columna Fecha? 1 de febrero de 2012
    4. ¿Cuál es la fecha máxima que existe en la columna Fecha? 29 de febrero de 2012
    5. ¿Cuál es el nombre del día para la última fecha en esta tabla filtrada? Es miércoles, pero esta es una pregunta muy difícil y demasiado difícil de responder sin materializar la tabla o hacer una investigación para verificar el día de la semana del 29 de febrero de 2012.

    !function(f,b,e,v,n,t,s)
    {if(f.fbq)return;n=f.fbq=function(){n.callMethod?
    n.callMethod.apply(n,arguments):n.queue.push(arguments)};
    if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version=’2.0′;
    n.queue=[];t=b.createElement(e);t.async=!0;
    t.src=v;s=b.getElementsByTagName(e)[0];
    s.parentNode.insertBefore(t,s)}(window,document,’script’,
    ‘https://connect.facebook.net/en_US/fbevents.js’);
    fbq(‘init’, ‘639916389503636’);
    fbq(‘track’, ‘PageView’);

    Suscribite a nuestro Newsletter

    No te enviaremos correo SPAM. Lo odiamos tanto como tú.