Combinar o Anexar Datos en Power BI / Power Query: Conceptos Básicos

  • Facebook
  • Twitter
  • LinkedIn

Anteriormente hice una serie de artículos sobre las operaciones Merge/JOIN (aquí está la primera parte) y ahora es tiempo de publicar uno sobre las operaciones combinar/anexar.

Entonces… ¿Cómo se combinan/anexan/apilan tablas con Power BI/Power Query?

Hay múltiples formas de hacer esto, pero vamos a comenzar con lo más básico.

Caso: Combinar datos de 2 archivos CSV

Imagina que tenemos 2 archivos CSV.

  • Datos de ventas en el año 2017 (Sales 2017)
  • Datos de ventas en el año 2018 (Sales 2018)

En realidad, nuestras fuentes de datos pueden ser cualquiera. Puede ser un archivo CSV y un archivo de Excel, quizás una tabla de una base de datos y otra de una API.

Hacerlo en Power BI / Power Query no tiene mayor diferencia ya que harán los mismos procesos sin importar sus fuentes de datos. Lo que estoy a punto de mostrarte aplica para cada fuente de datos posible dentro de Power BI / Power Query.

Queremos anexar ambas en una única tabla. ¿Cómo hacemos eso?

Conectarse a los Datos

Este es un proceso bastante sencillo en donde seleccionamos nuestra fuente de datos desde la ventana “Obtener datos” y luego hacemos el proceso de importación. Este proceso mostrará una ventana del navegador para que puedas seleccionar tu archivo y luego te dará una vista previa de los datos como esta:

Para terminar, puedes hacer clic en Editar para ir directo al editor de Power Query.

Esto es bastante sencillo y en nuestro caso, nuestros archivos CSV tienen el formato correcto, por lo que no necesitamos hacer transformaciones aparte de las que hace Power BI / Power Query de forma automática.

Repetimos este proceso para el archivo 2018 y luego tendremos 2 consultas:

Esas son las consultas o las tablas que queremos apilar una encima de la otra. ¿Cómo hacemos eso?

Combinar / Apilar / Anexar Tablas

Esta es la parte más fácil de todas. Ahora lo único que debes hacer es encontrar el botón que dice Anexar consultas (Append Queries) y luego aparecerá una nueva ventana. Ahí puedes combinar todas las consultas que quieras.

No tienen que ser únicamente 2 tablas, pueden ser tantas tablas como quieras. Esto significa que el año siguiente, cuando ya tenga listos los datos del 2019 puedo simplemente crear una nueva consulta y agregarla a la lista de tablas que quiero que se combinen. Así de sencillo.

El resultado de esto será una tabla con todas las columnas de las tablas que combinamos y todos los datos de ambas.

Consideraciones

Carga de Datos

Cuando creas las consultas, estarán fijadas de forma predefinida para cargarse a tu Modelo de Datos o también se pueden crear como nuevas tablas dentro de Excel si usas Power Query para Excel.

Esto puede crear duplicación de datos, lo que no es necesario en absoluto. Para evitar que esto suceda, puedes cambiar el comportamiento de las consultas Ventas 2017 y Ventas 2018 y fijarlas como Solo conexión.

Con el Power BI Desktop,

Puedes hacer clic derecho en la consulta y deshabilitar la opción Cargar al desmarcar la opción Activar carga (Enable Load).

Privacidad de datos y el plegado de consultas (query folding)

Al combinar tus datos, sigue los lineamientos de muestra de Privacidad de Datos (aquí) y del Plegado de Consultas (aquí) como se mostró en los artículos anteriormente escritos. Esto significa que tendrás que estar pendiente del funcionamiento de esos conceptos en tu caso específico. Recomiendo que leas los artículos sobre este tema en caso te topes con errores o problemas de rendimiento.

La función Table.Combine

Cuando haces el proceso descrito en esta entrada de blog, Power Query terminará usando una función llamada Table.Combine.

Cuando Power Query usa esta función, el proceso es similar a cuando haces una SQL UNION ALL. Esto significa que Power Query intentará encontrar columnas equivalentes en todas las tablas y apilará los datos de forma adecuada. Si una tabla tiene columnas que la otra no, entonces llenará los espacios vacíos con valores nulos.

Esta función es POR MUCHO el mejor método cuando se trata de anexar datos ya que es una función que fue diseñada específicamente para este propósito.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.