Práctica 2 – PowerQuery
Uso de parámetros
Un parámetro sirve para almacenar y gestionar fácilmente un valor estático que puede reutilizarse en las
consultas de carga de información o en los procesos de transformación de datos.
Los parámetros permiten modificar dinámicamente la salida de las consultas en función de su valor y se
pueden usar para:
• Cambiar los valores de argumento para transformaciones concretas y funciones de origen de
datos.
• Entradas en funciones personalizadas.
Utilizaremos un parámetro para especificar la ruta donde se alojan los archivos de las tablas en las que
estaremos trabajando, de forma que, si abrimos el archivo de PowerBI en otra computadora podamos
cargar los datos simplemente cambiando el valor del parámetro.
Al realizar la carga de los archivos CSV, el primer paso (<Origen>) muestra la ruta donde estos se
encuentran guardados.
Si, por ejemplo, modificamos el nombre de la carpeta o copiamos los archivos en otro directorio, se
mostrará un error como el que se muestra en la figura.
Para crear un parámetro diríjase al menú Inicio > Administrar parámetros > Parámetro nuevo
En la ventana de administración de parámetros: coloque un nombre; en <Tipo> seleccione “Texto”; en
<Valor actual> escriba la ruta completa donde se almacenan los archivos CSV.
OJO: asegúrese que la ruta termine con una pleca “\”.
Al finalizar, se mostrará el parámetro en el listado de consultas de la izquierda.
Para hacer uso del parámetro, modificaremos el paso <Origen> de la tabla VENTAS. Sustituir la ruta por lo
siguiente:
El símbolo “&” se utiliza para unir dos textos, por lo que al hacerlo estaremos concatenando la ruta del
parámetro con el nombre del archivo CSV que contiene los datos.
A manera de práctica, cambie el nombre del directorio donde están almacenados los datos en su
computadora. Antes de ello, aplique los cambios, guarde el archivo de PowerBI y cierre la aplicación, de lo
contrario es posible que el sistema operativo no le permita cambiar el nombre del directorio.
Al abrir de nuevo el archivo de PowerBI y abrir la ventana de PowerQuery, las consultas mostrarán un error
indicando que no se encuentra la ruta de acceso.
Actualice el parámetro con el nuevo nombre del directorio. Luego, en el menú Inicio, despliegue la pestaña
debajo de la opción “Actualizar vista previa” (marcada en la imagen anterior) y seleccione “Actualizar todo”,
con lo que el error de la tabla VENTAS habrá desaparecido.
Ahora, modifique la ruta de las consultas del resto de las tablas con el mismo parámetro creado.
Para aquellas tablas que se obtuvieron a partir de un folder, el procedimiento tiene un paso adicional. En
primer lugar, sustituir el código del paso <Origen> colocando el parámetro en lugar del directorio:
Posteriormente, seleccione el paso <Navegación> y cambie el directorio por el nombre del parámetro.
Aplique los cambios, guarde y cierre PowerBI.
Para probar el funcionamiento, cambie de nuevo el nombre de la carpeta donde se encuentran los archivos.
Luego, abra de nuevo el archivo de PowerBI y la ventana de PowerQuery. Modifique el parámetro para que
coincida con el nuevo nombre de la carpeta y seleccione “Actualizar todo” para cargar de nuevo todas las
consultas.
Limpieza de datos
1. Cargue el archivo de Excel llamado “Employees”. Al hacerlo notará que las primeras dos filas
aparecen sin datos (las celdas contienen valor “null”), esto se sebe a que el libro de Excel posee un
encabezado como se muestra en la figura:
2. Elimine las primeras dos filas con la opción “Quitar filas > Quitar filas superiores” del menú inicio.
3. La primera columna también carece de datos,
elimínela dando click derecho sobre el
encabezado y seleccionando la opción “Quitar”.
4. Promueva la primera fila como encabezado. En
el menú “Transformar”, seleccione la opción
“Usar primera fila como encabezado”
5. Hay empleados cuyo valor de salario es “null”,
quite esos registros dando click al botón de filtro
de la columna <Salary> y seleccionando la
opción “Quitar vacíos”, como se muestra en la
imagen de la derecha.
6. En la columna <Department> hay datos que
tienen el texto NULL. Note que ese valor es
diferente al valor null de la columna <Gender>.
Presione click derecho sobre el encabezado de la
columna <Department> y seleccione la opción
“Reemplazar valores”. En la ventana, en la
opción “Valor que buscar” escriba NULL, y en “Reemplazar con” digite N/A. Hago lo mismo con la
columna <Gender>, pero en lugar de escribir NULL, digite null (en minúsculas).
Nota: En una base de datos null es un valor que se utiliza para indicar que el valor de una columna es
desconocido o no está disponible. La diferencia con el “NULL” que tenía la columna <Department> es
que, en ese caso, no era un null de base de datos, sino que el texto “NULL” como tal.
7. Crear una nueva columna para extraer el país.
a. Presione click derecho sobre el encabezado de la
columna <Location> y seleccione “Duplicar
columna”.
b. Seleccione la columna duplicada y, en el menú
“Transformar”, seleccione la opción “Extraer >
Últimos caracteres” y digite 3 en la ventana
emergente.
c. Adicionalmente, reemplace los espacios vacíos. Note que algunas celdas poseen espacios
antes del valor del código de país. Presione click derecho sobre la columna duplicada,
seleccione “Reemplazar valores”. En “Valor que buscar” digite un espacio en blanco y deje
vacío la opción “Reemplazar con”.
8. Extraiga el año de la fecha.
a. Duplique la columna <Start Date>.
b. Seleccione la columna duplicada. En el menú
“Transformar”, seleccione las opciones “Fecha > Año >
Año”.
Combinar datos de varios archivos
En ocasiones es necesario unir varios archivos que tengan la misma estructura (mismas columnas, pero
pueden diferir en sus registros).
1. Seleccione un nuevo origen de datos y busque
la opción “Carpeta”
2. En la ventana emergente, presione click en el
botón “Examinar” y ubique la carpeta con
nombre “CSV” que le fue compartida.
3. Se mostrará una ventana con todos los archivos
que posee esa carpeta. Seleccione el botón
“Combinar y transformar”.
4. Se le mostrará la ventana “Combinar
archivos”. En “Archivo de ejemplo” debe
seleccionar el archivo que se encuentre
más completo, pues el seleccionado se
utilizará para combinar los archivos. Si el
archivo de ejemplo posee más columnas
que el resto, al combinar los archivos les
colocará null a aquellos archivos que no
posean esas columnas adicionales. Si,
por el contrario, el archivo de ejemplo
posee menos columnas, se eliminarán las
columnas sobrantes de los otros archivos.
5. PowerQuery creará una tabla con todos los registros de los archivos combinados y una columna
que contiene el nombre del archivo origen. Note que, adicionalmente, se creó una carpeta en la
sección de “Consultas” con los pasos y parámetros que se tomaron para la combinación.
Anexar consultas
El proceso anterior también puede realizarse con tablas ya cargadas.
1. Cargue únicamente el archivo “students & courses” de los datasets que se les compartió.
2. Marque las 3 tablas (hojas) que contiene el archivo de Excel. PowerQuery las 3 tablas en la
sección de “Consultas” del panel izquierdo.
3. Si es necesario, promueva la primera fila como encabezado en cada una de las 3 tablas.
4. En la tabla YEAR11, adicione una nueva columna de nombre “Nivel” y que contenga el valor de 11.
Haga lo mismo con la tabla YEAR12, pero coloque 12 al valor de la nueva variable “Nivel”
5. Seleccione la tabla YEAR11 y seleccione las opciones “Anexar consultas > Anexar consultas para
crear una nueva” del menú Inicio.
6. En la ventana emergente, seleccione las dos tablas YEAR11 y YEAR12
Nota: Para anexar una tabla al final de otra, ambas tablas deben tener las mismas columnas. No importa
si las columnas no están en el mismo orden. En caso no tengan las mismas columnas, Power Query las
anexará, incluyendo todas las columnas. Los valores faltantes se mostrarán como nulos en la tabla final.
Combinar consultas
Este proceso consiste en agregar datos de una tabla relacionada. Para combinar o unir dos tablas, se
necesita un valor común en ambas (llave foránea). En este caso la tabla resultante del proceso anterior
contiene el campo <Course> al igual que la tabla COURSES, por lo que procederemos a combinarlas.
1. Seleccione la tabla resultante del proceso anterior.
2. Seleccione las opciones “Combinar consultas > Combinar consultas para crear una nueva” del
menú Inicio.
3. En la ventana emergente, seleccione/marque la columna <Course> de la tabla
4. En el segundo menú desplegable, seleccione la tabla COURSES
5. Marque la columna <Course> de la tabla COURSES
6. PowerQuery reconocerá automáticamente el tipo de combinación (relación) existente entre las dos
tablas
7. Se creará una nueva tabla que contiene una relación entre las dos seleccionadas en el paso 5.
8. Presione click sobre el ícono de la izquierda de la columna <COURSES>. Desmarque el campo
<Course> de la lista y presione “Aceptar” para expandir todos los campos.
Cargar información de sitios web
En ocasiones es útil cargar datos/tablas de páginas web, para ello siga el siguiente ejemplo.
1. En “Nuevo origen” seleccione la
opción “Web”
2. En la ventana emergente, en
“Dirección URL” digite el sitio:
https://www.geo-ref.net/sp/slv.htm
(Puede tardar varios minutos,
dependiendo de su conexión a
Internet y la complejidad de la
página)
3. Presione click sobre cada una de las
tablas que PowerQuery reconoció.
4. Marque el checkbox de las tablas
que contengan la información de
población por departamento y por
municipio.
5. Al presionar aceptar, PowerQuery
agregará al modelo de datos las
tablas seleccionadas.