Sei sulla pagina 1di 56

El ADN de Power Query 261

Capítulo 6

Capítulo 6: Materialización Alterna de Tablas con Modos


de Dinamización

www.excelfreeblog.com
262 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Introducción
Las operaciones que presentaremos en breve: anulación de
dinamización y columna dinámica eclosionaron de una
fundamental: La transposición, en aras de resolver formatos de
tablas con etiquetas de jerarquías para categorizar columnas
(También las llamamos niveles de encabezados).

Por otro lado, sabemos que de la misma forma que un sumiller


puede anticipar de forma astuta los matices de una añada de
especial bouquet que pone delante del comensal, nuestro
estimado lector vislumbrara que se avecina conocimiento que
nos permitirá solventar escenarios de transformación que
otrora requerían un trabajo extenuante, y que, a partir de ahora
dotara nuestro toolkit de preparación y limpieza de datos con
«artefactos» que parecen sacados de mundos mitológicos.
— A Wizard did it! —

Pausemos un Momento
Don Gustavo exclama en voz alta: «Esto lo hizo un mago, es magia».
Es una corta anécdota de una formación que estábamos impartiendo
por allá en el año 2016, cuando uno de nuestros estudiantes (Don
Gustavo) dijo de forma inconsciente y para oídos de todos que la
anulación de dinamización (tema de este capítulo) era magia; su
primera impresión fue que dicha operación estaba materializando
datos de la nada, sin embargo, después de la explicación comprendió
que era una manera elegante de transposición.
Por ello lo parafraseamos con: A wizard did it!

www.excelfreeblog.com
El ADN de Power Query 263

Modos de Dinamización
Para comprender esta nueva consigna es crucial recalcar que
tenemos dos operaciones:

NOTA
▪ Anulación de Dinamización
▪ Dinamización (Columna Dinámica) La dinamización en la
interfaz de Power Query se
encuentra bajo el nombre
de columna dinámica en su
comando respectivo, en
Una operación es la inversa de la otra y en ambos casos
referencia directa a lo que
consiste en formas convenientes de transposición de los pasaría con la columna a
seleccionada si se agrega un
datos, que en términos generales es una invariancia área de colocación distinta a
traslacional. valores en una tabla
dinámica

Acaparamos las dos operaciones bajo la sombrilla: Modos de


dinamización, en esencia una manera «cool» de nombrarlas al
unísono.

Técnicas de Segundo Grado


En nuestro esquema de acciones y operaciones, todo aquello
que implique los modos de dinamización aderezado con otras
técnicas, métodos y trucos con el objeto de abrazar el formato
tabular, las englobaremos con la etiqueta: técnicas de segundo
grado.

Materialización Alterna: Si bien en Power Query tenemos la Re-Materialización


tabla visible de forma material, estas técnicas nos permitirán
pasar de un formato con etiquetas de jerarquías en columnas
al tabular, re-materializando la tabla con un aspecto alterno.

www.excelfreeblog.com
264 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Anulación de Dinamización (Unpivot)


La operación de la cual nos ocuparemos enseguida lleva por
nombre anulación de dinamización, que en resumidas cuentas
fue bautizada con tan florido nombre para hacer hincapié en
NOTA
que permite pasar del formato generado por una tabla
Llamamos tabla dinámica
sencilla a aquella que solo dinámica sencilla al formato al tabular en la brevedad de un clic.
tiene un campo en el área
de columnas y puede tener
uno o más campo en el área En lugar de explicarte que realiza esta operación al son de
de filas.
palabra escrita, lo cual destacaría por su poco tino, optaremos
por mostrártelo con una ilustración:

Formato Tabular

(Formato) Tabla Dinámica

Iniciamos con la tabla de datos con un formato


semejante al de una tabla dinámica. Llegamos al ideal del formato

Figura 6. 1 – Esquema del Input y Output de Anulación de Dinamización

¡Toma Nota!
Es ineludible dejar claro que la operación de anulación de
dinamización consiste en revertir o anular el proceso natural que
ocurre cuando se crea un reporte de tabla dinámica.

www.excelfreeblog.com
El ADN de Power Query 265

Ahora que entendemos el fin último de la operación que nos


atañe, es propicio comprender el funcionamiento interno o
mecánica que sigue para llegar el resultado deseado, esto nos
permitirá desarrollar una lógica exclusiva para resolver
escenarios más complejos.

Mecánica de Anulación de Dinamización


La operación de anulación de dinamización gravita en Power Query
en 3 versiones, cada uno expresado en su propio comando,
estos son:

▪ Anulación de Dinamización de Columnas (A.D.C)


▪ Anulación de Dinamización de Otras Columnas (A.D.O.C)
▪ Anulación de Dinamización de Columnas Seleccionadas únicamente (A.D.S.U)

Pausemos un Momento
¡En realidad solo son dos versiones!
En la interfaz de Power Query contaremos con tres comandos, a pesar
de esto, dos de ellas:
▪ Anulación de Dinamización de Columnas
▪ Anulación de Dinamización de Otras Columnas
Detrás de cámaras resulta siendo lo mismo, pero la interfaz de Power
Query nos brinda dos opciones para eficiencia en el trabajo según nos
convenga.
A continuación, describiremos la mecánica de funcionamiento de las
3 versiones, pero desde el punto de vista visual y no netamente interno
del motor M.

www.excelfreeblog.com
266 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Entremos en materia desentrañando la mecánica de la primera


vertiente:

Mecánica A.D.C. Mecánica de Anulación de Dinamización de Columnas

La anulación de dinamización de columnas ejecuta los sigueintes


NOTA
pasos:

La explicación también la
1. Gira las etiquetas de las columnas seleccionaadas a
puedes estudiar de forma
visual, gracias a que la valores, es decir, se transponen para pasar a ser
lección del vídeo curso
Laboratorio de Datos con elementos de una nueva columna que tendrá por
Power Query se encuentra nombre Atributo, sin embargo, esto courre n veces en
disponible en YouTube.
la misma columna, donde n es el número de filas en la
tabla inical.

2. Los elementos de las columnas seleccionadas a anular


dinamización, se toman fila a fila y de forma completa
para ser trasnpuestas una única vez uno debajo de tro
en una columna nueva cuyo nombre será valor.

3. Las casillas vacías en las columnas que no se anula


dinamización siguen la operación rellenar abajo.

¡Lo sabemos! es más fácil entender el lenguaje alien de la


película arrival que la descripción anterior, sin emargo, apoyate
del vídeo y del esquema siguiente para esclarecer:

www.excelfreeblog.com
El ADN de Power Query 267

Versión: A.D.C

Inicio

Recordar remover: totales,


subtotales, filas en blanco,
columnas en blanco y
errores en primer lugar.

Proceso / Mecánica

Final

Los nombres de columnas


Atributos y Valor siempre se
los asigna por defecto la
operación, ya que no tiene
manera de saber cuáles los
nombres originales de
dichos campos.

www.excelfreeblog.com
268 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

La mecánica de la segunda versión es descaradamente intuitiva


una vez etendemos plenamente la mecánica de
funcionamiento de Anulación de Dinamización de Columnas, a
pesar de ello, no esta demás dejar su descricpión y esquema.

Mecánica A.D.O.C Mecánica de Anulación de Dinamización de Otras Columnas

Es valido recalar que: La A.D.O.C es para todos los fines identica a


A.D.C, de hecho su función M como resultado es la misma, sin
embargo, la diferencia radica en la selcción de columnas en la
interfaz. Esos son los pasos:

1. Gira las etiquetas de las columnas no seleccionaadas a


valores, en otras palabras, toma los nombres de los
campos de aquellas columnas que no se seleccionaron
y las transpone para pasar a ser elemntos de una nueva
columna que tendrá por nombre: Atributo, esto se
replicara n veces una debajo de otra en la misma
columna, donde n es el número de filas en la tabla inical.

2. Los elementos de las columnas no seleccionadas, se


toman como filas completa para ser trasnpuestas en
una columna nueva que será denominada valor.

3. Las casillas vacías en las columnas seleccionadas siguen


la operación rellenar abajo.

El esquema será más explicativo:

www.excelfreeblog.com
El ADN de Power Query 269

Versión: A.D.O.C

Inicio

No Olvidar Quitar: totales,


subtotales, filas en blanco,
columnas en blanco y
errores.

Proceso / Mecánica

Final

Los nombres de columnas


Atributos y Valor siempre se
los asigna por defecto la
operación, ya que no tiene
manera de saber cuáles los
nombres originales de
dichos campos.

www.excelfreeblog.com
270 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Podremos ser insistentes pero no queremos el mas minimo


vestigio de duda, por ello recordemos:

Las dos versiones de la operación anulación de dinamización


anteriores son exactamente iguales internamente, esto es tan
crucial que debemos tomaar nota:

¡Toma Nota!

Las versiones de la operación de anulación de dinamización: A.D.C y


A.D.O.C. al final del día internamente desembocan en lo mismo, en
otras palabras, el motor del lenguaje M arroja la misma función M,
que sería algo del siguiente estilo:

=
Table.UnpivotOtherColumns
(NombreTabla, {"País"}, "Atributo", "Valor")

Se debe destacar que las columnas a no anular dinamización en


nuestro ejemplo es solo una columna: País y si representa en el
segundo argumento como {“País”}, si son más de dos columnas se
representa como {“Columna1”,”Columna2”, …})
De lo anterior podemos ver que la columna País es la queda fija en la
función, por lo tanto, cada vez que se agreguen nuevas columnas en
nuestro origen de datos a estas inexorablemente también se les anulará
la dinamización.

www.excelfreeblog.com
El ADN de Power Query 271

Nuestro lector más espabilado en el recorrido de estas páginas


le saltará a la vista la diferencia entre las dos vertientes
anteriores y A.D.S.U.

— ¿En qué se sustenta la diferencia?

Cuando se aplica el comando Anulación de Dinamización de


Columnas Seleccionadas Únicamente (A.D.S.U) y luego llegan
nuevos campos a la tabla original por actualización, a estas no se
les anulara la dinamización, de donde se infiere que, las
columnas a anular dinamización quedan fijas.

Mecánica de A.D.S.U Mecánica A.D.S.U

El funcionamiento visual cotiza en el mismo ramo que el de


Anulación de Dinamización de Columnas sin ninguna contraste
aparante, en consecuencia, el esquema gráfico es el mismo. No
obstante, sabemos que intermanete con el motor M su
diferencia estriva en la actualización.

¡Riesgo: Advertencia!
Ofreciendo una sonrisa bajos cero y gesto de despreocupación un
desarrollador del equipo de Microsoft para Power Query han
manifestado que el comando A.D.C será erradicado.
Es perfectamente válido traer a colación que si llega a suceder sabrás
que en realidad con el comando A.D.O.C es suficiente. (En nuestra
opinión tenemos reservas de que ocurra)

www.excelfreeblog.com
272 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Recomendaciones y Buenas Prácticas

Antes de utilizar esta poderosa funcionalidad debemos


percatarnos en una primera instancia de ciertas características
en la tabla que alimentará a Power Query, específicamente de:
Totales, subtotales, filas y columnas en blanco, así como de
filas y columnas de error.

Ley 0
Limpieza Inicial La cuestión es simple, lo primero a realizar es remover:

▪ Totales generales (Si aplica)


▪ Subtotales (Si aplica)
▪ Filas en blanco (Si aplica)
▪ Columnas blanco (Si aplica)
▪ Filas de error (Si aplica)
▪ Columnas de error (Si aplica)
▪ Filas Duplicadas (Si aplica)
▪ Columnas Duplicadas (Si aplica)
▪ Etiquetas no congruentes en el contexto de los datos
(Si aplica)

El archivo de trabajo que utilizaremos es el siguiente:

¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 6 puedes encontrar el archivo de Excel con nombre:
CAP6EJ1 - IngSemestreI y extensión xlsx.

www.excelfreeblog.com
El ADN de Power Query 273

El archivo es el siguiente:

Figura 6. 2 – Ingresos Semestre I para limpieza inicial

Es bueno observar el formato desde su origen para conocer y


entender que limpieza inicial necesitan.

4. Abrimos un archivo nuevo de Power BI.

5. Vamos al grupo Datos Externos y desplegamos las


opciones comando Obtener datos, para allí seleccionar
Excel.

6. Navegamos en nuestro PC y seleccionamos el


cargamos el archivo CAP6 EJ1 - Ing SemestreI.xlsx.

7. En el cuadro de dialogo Navegar seleccionamos el


elemento Ingresos Semestre I 2015 y clic en el botón
Editar.

www.excelfreeblog.com
274 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Antes de ir a la ventana de Power Query queremos destacar


desde el formato de Excel la limpieza inicial que se debe
ejecutar.

Etiquetas no congruentes: • Año, • Semestre, • Encabezado Global, filas en blanco

Fila en blanco

Fila en blanco Columna en blanco

Totales

Al no tener toda la fila


completamente vacía no es
una fila en blanco, en realidad
Columna en blanco Fila en blanco
se debe filtrar el gran total

Figura 6. 3 – Limpieza Inicial a Ejecutar

Estructurando y resumiendo, encontramos en este formato lo


siguiente:

1. Remover columnas y filas en blanco


2. Remover totales
3. Remover etiquetas no congruentes

www.excelfreeblog.com
El ADN de Power Query 275

Ahora si observemos como ha cargado Power Query la tabla de


datos:

Figura 6. 4 – Fragmento de la Tabla Ingresos Semestre 2015 en Power Query

A destacar con prontitud es que la etiqueta general: Ingresos


Generados por Países Suramericanos fue promovida como
encabezados de columna, dejando a su paso de las columnas
2 en adelante con la etiqueta genérica Column.

¡Toma Nota!

En algunas versiones de Power Query y sobre todo en otras tecnologías


puede que no promueva la primera fila como encabezado.

www.excelfreeblog.com
276 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Quitar Paso: Inicialmente procederemos a quitar los encabezados y


Encabezado ponerlos como una fila normal de datos.
Promovido

Si bien podemos optar por ir a la pestaña Transformar y en el


grupo Tabla ubicar las opciones Usar la Primera Fila como
Encabezado para desplegar y finalmente utilizar el comando
Usar encabezados como primera fila.

Figura 6. 5 – Comando Usar Encabezados como Primera Fila

Lo mejor será remover el paso en el panel de Configuración del


Consulta pulsando clic encima la «x» en el extremo izquierdo
del paso con nombre Encabezados Promovidos, así lo
dinamitamos.

Figura 6. 6 – Eliminar Paso Encabezados Promovidos

www.excelfreeblog.com
El ADN de Power Query 277

Con lo anterior no solo logramos ahorrar un paso, sino que


restamos uno. (Con fines económicos de líneas M esto es ideal)

Primero quitemos filas en blanco, esto es algo muy sencillo que Quitar filas en
ya conocemos, por lo tanto, teniendo cualquier columna Blanco

selecciona vamos a la pestaña Inicio grupo Reducir Filas,


desplegamos las opciones de Quitar Filas para finalmente
pulsar clic encima del comando Quitar Filas en Blanco.

Figura 6. 7 – Quitar Filas en Blanco

Procedamos a remover ahora etiquetas no congruentes y las Aplicar


etiquetas totales para columnas, todo ello también en un Filtros

mismo paso, tal tarea la podemos conseguir con el filtro de la


columna numero 1 deseleccionado los elementos:

▪ (nulo)
▪ Ingresos Generados …
▪ Año 2015
▪ Semestre 2015

La imagen siguiente lo muestra:

www.excelfreeblog.com
278 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Figura 6. 8 – Elementos de Filtros a Desactivar

— ¿Qué hace falta?

Remover las columnas en blanco, concretamente las columnas


2 y 10.

Para ello seleccionamos la columna 2 y a continuación con la


tecla «Ctrl» sostenida seleccionamos la columna 10, luego de
ello pulsamos clic derecho, en el menú que emerge ubicamos
el comando Quitar pulsamos clic.

La tabla hasta este punto debe lucir.

www.excelfreeblog.com
El ADN de Power Query 279

Figura 6. 9 – Tabla de Datos Después de Limpieza Inicial

Es menester hacer énfasis en que: Promover


Encabezado

Un punto crítico consiste en utilizar la primera fila


como encabezados, después de la limpieza inicial.

En ocasiones se puede pasar por alto algo tan importante y


posteriormente dar con un resultado extraño, por lo previo
debemos ir a la pestaña Transformar grupo Tabla y pulsar en el
comando Usar la Primera Fila como Encabezado.

Figura 6. 10 – Tabla de Datos con Fila Promovida

www.excelfreeblog.com
280 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Pausemos un Momento
Tratar de utilizar operaciones como anulación de dinamización y
columna dinámica sin haber realizado la limpieza inicial, que en
realidad consisten en técnicas de primer grado y por ello el orden del
presente libro, es una lucha propia de necios, peor aún si se deja total
y subtotales para la parte de análisis.

Unpivot: Un Nivel de Encabezado de Columna

¡Ha llegado la hora de la verdad!

Las tres vertientes de la operación de anulación de dinamización se


pueden encontrar en la pestaña Transformar grupo Cualquier
Columna y opciones Anula dinamización de Columnas.

Figura 6. 11 – Variaciones de la Operación Anulación de Dinamización

Los comandos también pueden encontrarse fácilmente gracias


a la sutil magia del clic derecho.

— ¿Cuál de las tres utilizar?

www.excelfreeblog.com
El ADN de Power Query 281

Depende del caso …

En nuestra situación descartamos la vertiente Anulación de


Dinamización de Columnas Seleccionadas Únicamente por que a
medida que aparezcan más meses: Julio, agosto, septiembre,
octubre, etc., etc. Queremos que se vaya anulando la
dinamización de dichas columnas también.

Entre los comandos Anulación de Dinamización de Columnas y


Anulación de Dinamización de Otras Columnas que al fin de
cuentas es lo mismo, pero en nuestro escenario lo más
económico sería el comando Anulación de Dinamización de Otras
Columnas debido a que solo debemos seleccionar la columna
País en contraste con Anulación de Dinamización de Columnas
donde se deben seleccionar seis de ellas, esta diferencia sutil
pero de micro productividad nos hace decantarnos por
Anulación de Dinamización de Otras Columnas.

— Ejecutemos la operación:

Seleccionamos la columna País, luego pulsamos clic derecho y


ejecutamos el comando Anulación Dinamización de Otras
Columnas.

Y como por arte de mágica llegamos al formato tabular, sin


mayor trabajo adicional que renombrar los campos con
nombre Atributo y Valor.

www.excelfreeblog.com
282 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Figura 6. 12 – Fragmento de Formato Después de A.D.O.C

Inicialmente procederemos a quitar los encabezados y


ponerlos como una fila normal de datos.

Unpivot: Dos Niveles de Encabezados Columna

Aunque el caso anterior es extremadamente sorprendente ya


que en días pretéritos lograr darle el formato indicado a este
tipo de tablas requería de un trabajo riguroso, no obstante, las
posibilidades que se derivan de la operación de anulación de
dinamización van muchísimo más allá, debido a que con el
apoyo de otras operaciones y una buena lógica podremos
resolver escenarios más complejos y formatos enrevesados, no
en su lector, sino es su cantidad de variables para llegar al
formato tabular.

www.excelfreeblog.com
El ADN de Power Query 283

El subsiguiente caso de estudio nace de manera natural,


hablamos de: formato con dos niveles de encabezados en Dos Niveles de
Encabezado
columnas.

Un nivel de encabezado de columna, como ya hemos


mencionado antes, agrupa varios campos bajo una categoría.

Un nivel de encabezado de columna, como ya hemos mencionado


antes, agrupa varios campos bajo una categoría.

Esta categoría se indica en una fila que cobija una o más columnas
mediante etiquetas. Generalmente los usuarios de Excel utilizan el
comando Combinar y Centrar para vincularlas entre sí, otros
usuarios conscientes de las implicaciones y posibles dolores de
cabeza (que puede devenir con dicho comando) prefieren la opción
de Centrar en la selección.

Lo anterior nos da entender que al tener otro nivel existirá una


categoría que agrupa otros campos.

A todas luces, una imagen dejara claro como agua de que va


lo de niveles de encabezados de columnas, así que vamos al
archivo:

¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 6 puedes encontrar el archivo de Excel con nombre:
CAP6, EJ2.xlsx.

www.excelfreeblog.com
284 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

El segundo nivel de encabezado vemos que agrupa varias columnas, es decir, enero cobija las
columnas Ingresos, Presupuesto y Variación.

El prime nivel de encabezado será siempre la etiqueta natural de la columna o nombre del
campo, este caso únicamente agrupa una única columna, por ejemplo: Ingresos.

Figura 6. 13 – Formato con Dos Niveles de Encabezados

— ¿Cómo llevar la tabla anterior al formato tabular?

Lista de Para estar todos 100% en sintonía, listamos las columnas que
Columnas debe tener al final nuestra tabla con el formato tabular:

▪ País
▪ Medida (Los elementos indican si es ingreso, presupuesto o
variación)
▪ Mes
▪ Valor

www.excelfreeblog.com
El ADN de Power Query 285

Si nuestra tabla no tuviera la etiqueta de los meses, es decir, el


nivel de encabezado de mes la solución sería muy sencilla, pues
como ya hemos estudiado antes bastaría con anular
dinamización, a pesar de ello, lo peliagudo del escenario es que
debemos pasar tanto mes a elementos de columnas como las
medidas, que corresponde a ingresos, presupuesto y variación.

— ¡He aquí el truco!:

Combinar las dos primeras filas de la tabla de la siguiente


forma:

Figura 6. 14 – Objetivo con los dos niveles de encabezados de columnas

Manos a la obra:

1. Abrimos un archivo nuevo de Power BI.

2. Vamos al grupo Datos Externos y desplegamos las


opciones comando Obtener datos, para allí seleccionar
Excel.

3. Navegamos en nuestro PC y seleccionamos el archivo


CAP6, EJ2.xlsx y lo cargamos.

4. En el cuadro de diálogo Navegar seleccionamos el


elemento IPV y clic en el botón Editar

www.excelfreeblog.com
286 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Así se verá nuestra tabla en la interfaz de Power Query en Power


BI:

Figura 6. 15 – Fragmento de la Tabla con Dos Niveles de Encabezados de Columnas

Primero, lo primero: la limpieza incial:

(1) Limpieza Inicial 1. Seleccionamos la primera columna, vamos a la pestaña


Inicio, mostramos las opciones de Quitar Filas para luego
pulsar clic en Quitar filas en blanco.

2. Nos desplazamos al extremos derecho de la tabla en la


interfaz de Power Query para observar que las columnas
8 y 9 estan en blanco, las selccionamos con la tecla Ctrl
sostenida, clic derecho para luego pulsar en el comando
Quitar Columnas.

3. En la Columna 1 (Column1) desplegamos los filtros y


deshabilitamos TOTAL.

www.excelfreeblog.com
El ADN de Power Query 287

Podremos notar que Power Query nos situó el encabezado de


NOTA
Mes como encabezados de campos, sin embargo, necesitamos
que sea una fila normal, para ello vamos a el panel de Es válido recordar que
dependiendo de la
Configuración de la Consulta y seleccionamos el paso tecnología o la versión de
Power Query puede que
Encabezados Promovidos, posteriormente pulsamos clic en la x
automáticamente no añada
en su extremo izquierdo para remover el paso. el paso: Encabezados
Promovidos
automáticamente, puede
ocurrir especialmente en
Excel y Microsoft Flow.

Figura 6. 16 – Remover Paso: Encabezados Promovidos

Al hacerlo Power Query arrojara en la interfaz un error


inevitable:

Figura 6. 17 – Error al Eliminar Paso Encabezados Promovidos

www.excelfreeblog.com
288 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

La solución al problema anterior consiste en eliminar todos los


pasos Tipo Cambiado, en nuestro caso particular solo tenemos
uno.

Figura 6. 18 – Eliminar Paso Tipo Cambiado

¡Riesgo: Advertencia!
Cada vez que eliminemos un paso de Encabezados Promovidos y
existan pasos ulteriormente, con toda seguridad la interfaz nos
arrojara un error.
Esto ocurre porque al pasar a lo nombres genéricos Column1,
Column2, Column3, etc. Los siguientes pasos, y en concreto el paso
siguiente de Tipo Cambiado no encuentra los nombres de Columnas
Enero ni Febrero.
Para zanjar el inconveniente basta con eliminar todos los pasos tipo
cambiado, sin importar si es el inmediatamente siguiente o alguno más
adelante. (Recordemos, que una buena práctica que recomendamos
consiste en asignar los formatos de cada columna al final - siempre
que sea posible -)

www.excelfreeblog.com
El ADN de Power Query 289

A este punto nuestra tabla debe estar así:

Figura 6. 19 – Tabla con dos niveles de encabezados después de limpieza inicial

El siguiente paso, y el principal para este escenario, reside en


tratar de combinar las dos primeras filas, empero: En Power
Query no se pueden combinar filas, solamente columnas.

Para abordar este desafío debemos pensar un poco por fuera


de la caja, justamente transponer la tabla para combinar las (2) Transponer la
Tabla
dos primeras columnas, esto nos da indicar que, debemos ir la
pestaña Transformar y en el grupo Tabla para ubicar el
comando Transponer y pulsar clic encima de este.

Figura 6. 20 – Fragmento de la Tabla Transpuesta

www.excelfreeblog.com
290 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Antes de combinar las dos primeras columnas, es menester


rellenar abajo, ya que si no lo hacemos al combinar los
elementos Presupuesto y Variación quedarían sin el mes
correspondiente

(3) Rellenar Abajo Para ello seleccionamos la primera columna 1, para ir a la


pestaña Transformar y en el grupo Cualquier Columna desplegar
las opciones de Rellenar, allí oprimimos Abajo.

Figura 6. 21 – Fragmento de la Tabla luego de Rellenar Abajo

(4) Combinar Por fin, combinaremos nuestras dos columnas, esto es simple:
Columnas seleccionamos las dos columnas (Columns1 y Columns2), luego
clic derecho y pulsamos clic encima del comando Combinar
Columnas.

Con lo anterior aparecerá el cuadro de diálogo: Combinar


Columnas.

www.excelfreeblog.com
El ADN de Power Query 291

Figura 6. 22 – Cuadro de Diálogo Combinar Columnas

Lo primero es seleccionar un separador que después nos


permita dividir sin ninguna dificultad las columnas en sus partes
principales, puesto que, si los elementos de las columnas NOTA

tienen, por ejemplo: coma (,) y seleccionamos precisamente Es bueno escoger un


carácter que sea fácil de
esta como separador, más temprano que tarde tendremos que sacar con nuestro teclado,
dividir nuevamente y se tornara pesadamente complicado; muchas veces, las
combinaciones Alt en los
esto quiere decir que lo mejor será seleccionar un separador computadores portátiles no
funcionan correctamente
poco común. por la ausencia del teclado
numérico en la parte
derecha, por ello, la pleca es
La siguiente tabla listas caracteres de uso poco probable: una opción universal.
Combinaciones:
Tabla 6. 1 Caracteres Poco Comunes ideales como separadores
También es perfectamente
válido utilizar cualquier
combinación de caracteres
como separador, por
ejemplo: Excel, Power
Query, asdjasd, todas son
opciones buenas.

www.excelfreeblog.com
292 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Entonces, procedemos a mostrar la lista desplegable y escoger


la opción Personalizado, con lo previo se habilita una caja de
texto para digitar nuestro carácter especial, en nuestro caso,
utilicemos la barra vertical: |

La última parte nos ofrece la posibilidad de señalar el nombre


de la nueva columna, por defecto es Combinada, dejemos
intacto el nombre y clic en aceptar.

(4) Transponer Si bien han quedado combinados, es propicio recordar que las
necesitamos como filas, por lo tanto, transponemos la tabla
nuevamente.

Figura 6. 23 – Fragmento de Tabla con columnas combinadas y posteriormente transpuesta

— ¿Puedes indicarnos cuál paso hace falta?

Genial: Utiliza la primera fila como encabezados. La tabla de


mostrarse así:

www.excelfreeblog.com
El ADN de Power Query 293

Figura 6. 24 – Fragmento de Tabla, Transpuesta y Fila Promovida

Nuestro amigo(a) lector(a) ya podrá inferir que el comando a


utilizar de las tres opciones de Anulación de Dinamización debe
ser; A.D.O.C, por lo tanto, seleccionamos la columna número 1,
clic derecho y comando Anulación de Dinamización de Otras
Columnas.

Figura 6. 25 – Fragmento de la Tabla después de anular dinamización

www.excelfreeblog.com
294 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Nos restan unos finos detalles, puntualmente dividir la


columna Atributo por el separador (|) y luego renombrar las
columnas por nombres más descriptivos, así como asignar los
formatos si es necesario.

1. Seleccionamos la columna Atributo, clic derecho y


vamos a las opciones de Dividir y allí nos decantamos
por Dividir Columna por Delimitador y aceptamos

2. Renombramos las columnas como: País, Mes, Medida y


Valor

¡Y voilá!

Figura 6. 26 - Tabla con dos Niveles de Encabezado en Formato Tabular

www.excelfreeblog.com
El ADN de Power Query 295

Un Pivot: Dos Niveles de Rótulo de Fila


Visiblemente más niveles de encabezados de columnas son
perfectamente lícitos, en el caso previo teníamos dos niveles
(los nombres de los campos los contamos como el primer nivel de
encabezado), sin embargo, otra posibilidad es tener una
etiqueta o rótulo que agrupe varias filas.

La imagen a continuación muestra un nivel de rótulo de fila:

El rótulo Alta Población agrupa las tres primeras filas mientras que el rótulo de Baja Población
agrupa de la 4 fila en adelante.

Figura 6. 27 – Tabla con un Niel de Rótulo de Fila

www.excelfreeblog.com
296 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

A las filas naturales de la base de datos las contamos como el


primer rótulo de fila, en dicho caso será evidente que cada
rótulo ocupa una sola fila.

¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 6 puedes encontrar el archivo de Excel con nombre:
CAP6, EJ3.xlsx.

1. Abrimos un archivo nuevo de Power BI.

2. Vamos al grupo Datos Externos y allí desplegamos las


opciones de Obtener Datos para finalmente pulsar clic
en Excel.

3. Navegamos en nuestro computador para seleccionar y


cargar el archivo CAP6, EJ 3.xlsx

4. Eliminamos los pasos: Promover encabezado y Tipo


cambiado.

5. Quitamos filas en blanco y columnas en blanco (de


forma idéntica en cómo se hizo en la sección previa)

6. Desplegamos los filtros de la columna 2 (Column2) y


deshabilitamos el elemento TOTAL.

Hasta este punto, en esencia es lo mismo, pero la


diferencia marcada radica en el paso siguiente:

www.excelfreeblog.com
El ADN de Power Query 297

7. Seleccionamos la primera columna y rellenamos abajo.

Figura 6. 28 – rellenar Abajo Primera Columna que corresponde al primer nivel de Rótulo

8. Transponer la tabla.

9. Seleccionar la primera columna y rellenar abajo

10. Seleccionamos las columnas 1 y 2 y las combinamos,


en esta oportunidad podemos utilizar el carácter: «¶»
para variar

11. Transponemos la tabla nuevamente y utilizamos la


primera fila como encabezados

12. Seleccionamos columnas 1 y 2 y aplicamos A.D.O.C

www.excelfreeblog.com
298 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Figura 6. 29 – Fragmento de la Tabla Después de A.D.O.C con un nivel de rótulo de fila

13. Dividir Columna Atributo por delimitador: ¶

14. Renombrar Columnas, así: Densidad de Población, País,


Mes, Medida y Valor.

Figura 6. 30 – Fragmento de la Tabla con nivel de rótulo después de separar columnas y renombrar

www.excelfreeblog.com
El ADN de Power Query 299

¡Toma Nota!
¡Nomenclatura NxM!
La nomenclatura NxM informa que podemos encontrar tablas con
formatos donde existen N rótulos de filas y M niveles de encabezados
de columnas. Como se ha podido apreciar en los casos anteriores (1x1,
1x2 y 2x2) se entrevén patrones de transformación, el objetivo es llegar
al “algoritmo” para cualquier caso, sin embargo, la generalidad de esta
situación será tratada en el próximo capítulo (capítulo 7) y la
automatización total en el capítulo 19.

Columna Dinámica (Pivot)


Es hora de fijar el foco del capítulo en el segundo hijo de la
transposición: La columna dinámica. Así como lo son los
integrales a las derivadas o la resta a la suma, la operación de
columna dinámica es la inversa de la anulación de
dinamización.

Una lustración para mayor claridad:

Formato Tabular

(Formato) Tabla Dinámica

Figura 6. 31 - Esquema del Input y Output de la Operación de Columna Dinámica

www.excelfreeblog.com
300 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Como ya es costumbre a estas alturas daremos paso al estudio


de la:

Mecánica de Columna Dinámica (Versión Simple)

La operación de columna dinámica realiza lo siguiente:

Toma cada valor único de los elementos de la columna


seleccionada y los convierte en encabezados de columnas;
para las demás columnas excluyendo una especifica llamada

Funcionamiento: Columna de Valor, deja la lista de elementos únicos o la


Lógico de Columna combinación de elementos únicos si son varias columnas.
Dinámica

Para la columna especial denominada Columna de Valor,


realiza el agregado que indiquemos, es decir: Suma, Promedio,
recuento, etc. - Dependiendo del caso -.

Este proceso de columna dinámica o dinamización de


columnas (Pivot) se puede ver cómo crear una «tabla dinámica»
(su formato) en Power Query, donde en el área de columnas sólo
puede ir un campo (que sería la columna dinámica) y varios en el
área de filas.

¡Toma Nota!
Una diferencia notable con la analogía de tablas dinámicas respecto al
resultado de la operación de Columna Dinámica es que esta última no
incluye ni totales ni subtotales.

www.excelfreeblog.com
El ADN de Power Query 301

Versión: Simplificada

Inicio
¡Información!

La tabla inicial debe ser


idealmente una tabla con
formato tabular óptimo,
es decir, aplicar la
limpieza de datos inicial.

Proceso / Mecánica

Final

Recordemos que este proceso de columna


dinámica o dinamización de columnas (Pivot
Column) se puede ver cómo crear una “tabla
dinámica” (su formato) en Power Query,
donde en el área de columnas solo puede ir
un campo (que sería la columna dinámica).
Además, este formato no incluye ni totales ni
subtotales.

www.excelfreeblog.com
302 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Recomendaciones y Buenas Prácticas

El requisito para antes orquestar al tempo de la operación de


columna dinámica es la limpieza, entonces, se infiere que:

Regla General Lo primero a realizar es remover:

▪ Totales generales y subtotales (Si aplica)


▪ Filas y columnas en blanco (Si aplica)
▪ Filas y columnas de error (Si aplica)
▪ Filas y columnas Duplicadas (Si aplica)
▪ Etiquetas no congruentes en el contexto de los datos
(Si aplica)

Estamos viviendo un Déjà vu. Ni de cerca, puesto que a estas


alturas ya debe ser 100% claro que lo primero siempre a
ejecutar es la limpieza de datos inicial.

Veamos, ahora sí, la operación de columna dinámica directamente


en la interfaz de Power Query:

¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 6 puedes encontrar el archivo de Excel con nombre:
CAP6EJ4 – ColumnaDinámica.xlsx.

www.excelfreeblog.com
El ADN de Power Query 303

7. Abrir un archivo nuevo de Power BI


8. Inicio → Datos Externos → Obtener Datos → Excel
9. Navegamos en nuestro computador para ubicar,
seleccionar y cargar el archivo: CAP6EJ4 – Columna
Dinámica.xlsx
10. En el cuadro de diálogo Navegador seleccionamos el
elemento Ejemplo11 y clic en el botón Editar.

Nuestra tabla tiene un aspecto inofensivo, de hecho, se


concluye de primer vistazo que no es necesario la limpieza de
datos inicial.

Figura 6. 32 – Tabla para Dinamizar Columna

Pivot (Columna Dinámica): Versión Simplificada

Si queremos aplicar la operación de Columna Dinámica a la


tabla previa, lo primero que demos preguntarnos es: de cuál de
los campos apetecemos extraer los elementos únicos para que
pasen a ser encabezados de columnas, visto de otra forma,
cuál sería el campo que llevaríamos al área de columnas si el
objetivo fuera crear una tabla dinámica.

www.excelfreeblog.com
304 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

La respuesta varía dependiendo en cómo se desee mostrar la


información, de donde se infiere que, la columna Año o Mes son
respuestas legales; para este ejemplo, vamos a darle los
honores a la columna Mes, por todo esto, esta será la columna
dinámica la cual debemos seleccionar en la interfaz de Power
Query.

Figura 6. 33 – Tabla para Dinamizar Columna, con la Columna a Dinamizar Seleccionada

Ahora ponemos rumbo a la pestaña Transformar, grupo


Cualquier Columna y pulsamos clic encima del comando
Columna Dinámica.

Figura 6. 34 – Cuadro de Diálogo Columna Dinámica

www.excelfreeblog.com
El ADN de Power Query 305

Nótese en la imagen preliminar que el cuadro de diálogo


NOTA
enseña la columna dinámica mediante el texto: Use los nombres
La temática de tablas
de la columna “Mes” para crear columnas nuevas. dinámicas la hemos tratado
ampliamente en nuestro
canal de YouTube, por lo
— ¡Momento de decidir la columna de valores! que si necesitas un repaso
he aquí el material.

Esta sería la «columna que arrastraríamos al área de valores en


una tabla dinámica», a menudo una columna numérica, para
nosotros coincide con la columna: Tx.

Luego, mostramos las Opciones avanzadas, allí seleccionamos


el tipo de agregado que queremos que se aplique en la
columna valor. Otros recursos para
alcanzar la maestría en una
de las funcionalidades más
importantes en el catálogo
de un profesional son:
▪ El ADN de las Tablas
Seleccionamos la columna Tx. Dinámicas (2019)
▪ El Arte Marcial de las
Tablas Dinámicas (2018)
Tipo de Agregado
▪ Tablas Dinámicas La
Quinta Dimensión
(2015)

Figura 6. 35 – Parametrización Completa para Columna Dinámica

¡Riesgo: Advertencia!
Para el ejemplo previo, independientemente del tipo de agregado
aplicado, el resultado de la operación proporcionará el mismo
resultado, puesto que, la intersección fila-columna siempre tendrá un
único valor.

www.excelfreeblog.com
306 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Finalmente, oprimimos el botón Editar.

Figura 6. 36 – Tabla con Columna Dinámica Aplicada

Veamos el símil con Excel:

Figura 6. 37 – Símil Dinamización de Columna con Tabla Dinámica

¡Toma Nota!
Podemos concluir que todos los campos restantes, es decir,
exceptuando el campo de columna dinámica y el de valor, van
directamente al área de filas de la tabla dinámica, situación que se
cumple a cabalidad con la operación de columna dinámica.

www.excelfreeblog.com
El ADN de Power Query 307

Trazar una línea es adecuado, a causa de que la operación de


columna dinámica hasta aquí es la versión simplificada, entre
otras cosas porque sola hay tres campos.

Esto nos lleva a profundizar, y si bien, la mecánica de la


operación de columna dinámica debatida páginas atrás es
buena, el funcionamiento lógico de la versión expandida
explícitamente dará paso a claridad absoluta.

Mecánica de Columna Dinámica (V. Expandida)

1. Extrae la lista de elementos únicos y cada elemento lo


convierte en encabezado de columna.
Funcionamiento:
Lógico Versión
2. Para la(s) columna(s) no seleccionadas y excluyendo la
Expandida
columna de valor y la columna dinámica, deja la lista de
elementos únicos para esa columna o la combinación
de elementos únicos de las columnas.

3. Para la Columna de valor: realiza el agregado señalado.

a. Si para cada intersección fila(s)-columna(s) en


lo que sería la tabla resultado existe un único
elemento en la tabla inicial, entonces, se puede
indicar: No agregado.
b. Si al buscar en la tabla inicial según los
parámetros de intersección de lo que sería la
tabla resultado no encuentra ninguna fila que
cumpla, entonces retorna null.

www.excelfreeblog.com
308 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Versión: Expandida

Inicio Proceso / Mecánica


• C.D: Columna Dinámica
• C.V: Columna de Valor

¡Atención!
Los pasos se pueden leer con claridad en
la página anterior.

Final

Repasemos que este proceso de columna


dinámica se asemeja a crear una “tabla
dinámica” (su formato) en Power Query,
donde en el área de columnas solo puede
ir un campo (que sería la columna
dinámica). Además, este formato no
incluye ni totales ni subtotales.

www.excelfreeblog.com
El ADN de Power Query 309

Pivot (Columna Dinámica): Versión Extendida

Saltemos inmediatamente a la acción, para ello tengamos


presente que el archivo a utilizar es el siguiente:

¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 6 puedes encontrar el archivo de Excel con nombre:
CAP6EJ4 – Columna Dinámica.xlsx.

1. En esta oportunidad utilicemos el mismo archivo de


Power BI que ya hemos creado del ejercicio anterior.

2. En la interfaz de Power Query posicionamos el cursor de


nuestro ratón en el extremo izquierdo encima del Panel
de Consultas en un área “gris” y pulsamos clic derecho,
luego se muestra un pequeño menú en donde vamos a
seleccionar: Nueva consulta, para finalmente dar clic en
Excel.

Figura 6. 38 – Nueva Consulta de Panel de Consultas

www.excelfreeblog.com
310 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

3. Buscamos en nuestro computador el archivo CAP6EJ4


– Columna Dinámica.xlsx para seleccionarlo y cargarlo

4. Inmediatamente emerge el cuadro de diálogo


NOTA
Navegador, allí apreciaremos en su extremo izquierdo 4
Una característica clara de elementos, seleccionamos el elemento con nombre
la consulta Ejemplo 22 que
estamos trabajando se Ejemplo 22 y clic en el botón Aceptar.
cimenta en que no hace
falta la limpieza de datos
inicial, porque no tiene filas
ni columnas en blanco.

Por el motivo descrito del


paso 4 al 5 se va
directamente a ejecutar el
comando Columna
Dinámica (Pivot)
Figura 6. 39 – Elemento Ejemplo 22

5. Saltamos directamente a seleccionar la columna Mes


para ir a la pestaña Transformar y pulsar clic en el
comando Columna Dinámica que se ubica en el grupo
Cualquier Columna.

6. Para el cuadro de diálogo Columna Dinámica no está de


más cerciorarnos que el texto diga: Use los nombres de
columnas “Mes” para crear columnas nuevas, en la
siguiente instancia seleccionamos la columna «Tx» en
la lista desplegable Columna de Valores. Mostramos las
Opciones Avanzadas y en la lista desplegable
correspondiente Función de Valor Agregado vamos a
inclinarnos por No Agregar.

www.excelfreeblog.com
El ADN de Power Query 311

Figura 6. 40 – Configuración del Cuadro de Diálogo Columna Dinámica

7. Como paso concluyente solo nos resta presionar encima del


botón Aceptar.

A lo mejor el resultado incite estupor, a consecuencia de los


errores que se visualizan por doquier en las columnas Enero y
Febrero.

Figura 6. 41 – Errores en Columna de Valores en la Operación Pivot

— ¿Puedes explicar por qué?

Si es así excelente, en todo caso, acompáñanos en las


siguientes páginas para esclarecer el porqué de los errores.

www.excelfreeblog.com
312 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Sigamos los tres pasos del esquema:

A: Columna Dinámica (C.D)

B: Columna de Valor (C.V)

C.D: Extrae la lista de

1 elementos únicos y cada uno


lo convierte en encabezado de
columna.

Excluyendo C.D y C.V, deja


2 la combinación de
elementos únicos de las
columnas restantes

Figura 6. 42 – Esquema de Columna Dinámica con Ejemplo

www.excelfreeblog.com
El ADN de Power Query 313

Arribamos al quid de la cuestión, el paso número 3:

Columna de valor: Realiza el agregado señalado.

Si para cada intersección fila-columna en lo que sería la tabla


resultado existe un único elemento en la tabla inicial, entonces, se
puede indicar: No agregado.

Si al buscar en la tabla inicial según los parámetros de intersección


de lo que sería la tabla resultado no encuentra ninguna fila que
cumpla, entonces retorna null

En suma, nos hace falta analizar las partes de la tabla donde


están los errores, de resto sabemos con exactitud como han
surgido:

Elementos de Fila

Figura 6. 43 – Analizando Columnas de Error

En particular el análisis se hace casilla a casilla (de ahí la aparte Sub Paso 1
de: para cada intersección fila-columna), por lo que vamos a
tomar la encerrada en la figura anterior en (1).

Luego empareja los elementos “sobrantes” de dicha fila, es


decir, los que no provienen de la columna dinámica.

www.excelfreeblog.com
314 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Sub Paso 2 Y “filtra” la tabla de inicio con dichos elementos “sobrantes” en


las columnas correspondientes

Elaboremos un esquema de “zoom” de esta parte final por mor


de una explicación más exquisita.

1 Empareja los elementos “sobrantes” de la fila y los utiliza como filtros en


las columnas correspondientes.

El problema es que no puede


mostrar una columna de valores
en una sola casilla.

Ten presente que la columna de valor es «Tx» y el tipo


de agregado que seleccionamos fue: «No Agregar».

2 Toma los elementos del campo de valor, que para la situación específica es
«Tx» y lo retorna a la posición equivalente, que en este caso se corresponde
con la casilla de análisis

Figura 6. 44 – Zoom del Paso en la Mecánica de Columna Dinámica

www.excelfreeblog.com
El ADN de Power Query 315

Es claro ahora: el Error se presenta porque al indicarle No


Agregado no tiene manera de presentar una columna en una
sola casilla, de hecho, si pulsamos clic encima de unas de las
palabras de Error…

Figura 6. 45 – Clic en el Error

La interfaz muestra un mensaje diciendo precisamente eso,


con otras palabras, pero en conclusión señalando que son
demasiados elementos.

Tabla 6. 2 – Error de Demasiados elementos

¡Toma Nota!
Al presionar en la palabra Error se agrega un paso más en el Panel de
Pasos Aplicados con el nombre de la columna, para el caso Enero, por
lo tanto, si pretendemos realizar una nueva manipulación no
olvidemos en eliminar este último.

— Será transparente ahora la parte que reza:

www.excelfreeblog.com
316 Capítulo 6 • Materialización Alternas de Tablas con Modos de Dinamización

Si para cada intersección fila-columna en lo que sería la tabla


resultado existe un único elemento en la tabla inicial, entonces,
se puede indicar: No agregado.

El Siguiente Paso

Los lindes de las operaciones de Columna Dinámica y Anulación


de Dinamización no concluyen aquí, es más, sus bondades e
infinitas posibilidades demandan, aunque sea un par de
capítulos adicionales, debido a que el poder que subyacen en
ellas puede continuar en explotación, es por esto por lo que
entre otras cosas el siguiente capítulo seguirá tratando el
tema, pero con algo más de picante.

www.excelfreeblog.com

Potrebbero piacerti anche