EL ADN de Power Query
EL ADN de Power Query
Query
EL ADN de
Power Query
Versión digital e impresa autorizada por la marca Excel Free Blog en [email protected], Titulada:
El ADN de Power Query. 1 ra ed., (Capítulo 1 al 13 + 2 Anexos) por: Ing. Miguel A. Caballero Sierra e Ing.
Fabian E. Torres Hernández, autores de la Obra. Perteneciente a www.excelfreeblog.com en su Colección ADN
y distribuido por los mismos, sus afiliados y aliados de comercio electrónico.
Edición en Español
Autores: Miguel Caballero Sierra Editor: Miguel Caballero Sierra
Fabian Torres Hernández Diseño de Portada: María Alejandra Ramírez
Ninguna parte de este producto puede ser reproducida, almacenada, por ningún sistema de obtención de
información o transmitido en ninguna forma: electrónica, mecánica, fotocopia, fotoquímica, grabación,
escaneo o ninguna relacionada sin el permiso previo de los autores o autorización mediante el pago previo
de impuestos y adjudicación de derechos de autor.
DECLARACIÓN DE GARATÍA: LOS AUTORES, EDITORES DISTRIBUIDORES NO INCLUYE NINGUNA GARANTÍA O CONVENIENCIA RESPECTO A LA PRECISIÓN O
INTEGRIDAD DEL CONTENIDO DE ESTE TRABAJO Y ESPECIFICAMENTE RENUNCIAN A TODA GARANTÍA, INCLUIDAS LAS GARNATÍAS DE LIMITACIÓN DE
ADECUACIÓN PARA UN PROPOSITO PARTICULAR. NINGUNA GARANTÍA PUEDE SER CREADA O AMPLIADA POR VENTTAS O MATRIALES PROMOCIOANALES. LOS
CONSEJOS Y ESTRATEGIAS AQUÍ CONTENIDO PUEDEN NO SER CONFORMES PARA CADA SITUACIÓN. ESTE TRABAJO SE VENDE CON EL ENTENIDMIENT DE
QUE LOS AUTORES, EDITORES Y DISTRIBUIDORES NO ESTAN INVOLUCRADOS EN LA PRESTACIÓN DE SERVIOOS LEGALES, CONTABLEES U OTROS SERVICIOS
PROFESIONALES. SI UN SERVICIO PROFESIONAL ES REQUERIDO, EL SERVICIO DE UNA PERSONA PROFESIONAL DEBERÍA SER BUSCADO. NI LOS EDITORES
NI LOS AUTORES SERÁN RESPONSABLES DE LOS DAÑOS Y PERJUICIOS QUE DEREIVEN DE ELLO. El HECHO DE QUE UNA ORGANIZACIÓN O SITIO WEB SEA
REFEREIDA EN ESTE TRABAJO COMO CITA O POTENCIAL FUENTE DE INFORMACIÓN NO SIGNIFICA QUE LOS AUTORES O EDITORES RESPALDEN LA
INFORMACIÓN QUE LA ORGANIZACIÓN O SITIO WEB PUEDAN PROPRCIONAR O RECOMENDAR. ADEMÁS, LOS LECTORES DEBEN TENER EN CUENTA QUE LOS
SITIOS EN INTERNET LISTADOS EN ESTE TRABAJOL INTERVALO DE TIEMPO EN QUE ESTE TRABAJO ES REALIZADO Y CUANDO ES LEEIDO.
Para información general o de nuestros otros productos por favor contactar a: [email protected]
ISBN: 978-958-48-3993-0 │ Edición 1, Distribución 1: 26/05/2019.
Contenido Breve
9 Anexar ……………………………………………………………………………....404
14 Ambiente ………………………………………………………………….…………….
Epílogo ………………………………………………………………………...……dcxxii
Anexos
→ ←
ix
Contenido Detallado
Epílogo ..........................................................................................dcxxiii
Miguel, También se ha ido erigiendo como un autor prolífico gracias a su coautoría en los
libros Inteligencia de Negocios con Excel y Power BI, Tablas Dinámicas la Quinta Dimensión y El ADN
de Power Pivot, este último posicionado como uno de los mejores títulos en habla hispana en
la bibliografía para aprender y dominar Power Pivot y DAX para Excel. El también escribió
Funciones Primordiales en Excel, un minilibro en versión beta que enfatiza en las funciones
claves de Excel para generar un diferencial ágilmente.
Es pionero en la enseñanza y divulgación de Power BI, Power Pivot con lenguaje DAX y Power
Query con lenguaje M en habla hispana. Ingeniero industrial por formación y profesional Excel
developer por entrenamiento, ha desarrollado proyectos en el sector textil, financiero y
comercial, así mismo ha trabajado en el área de retribución salarial creando y validando
modelos de compensación fija y variables apoyado en hojas de cálculos sofisticadas.
xviii Sobre los Autores
Dedicatorias
No sólo te amo por quién eres, sino por lo que has hecho de mí, no
por tu belleza que es tan fácil de ver, sino por haberme completado
Introducción
Lo que estás a punto de ver parece una tecnología sacada de las páginas de una novela
Ciberpunk de Ernest Client, de hecho, si alguien nos hubiera relatado las maravillas de Power
Query 10 años atrás, nuestros oídos hubieran dado más crédito a grifos, dragones y titanes
colosales si alguien hubiera manifestado su hallazgo.
Por lo anterior y mucho más, invertir en la tecnología por excelencia para preparación de
datos es una decisión de ganadores, y así como un barco no deja rastro en el olaje, cualquier
ápice de duda se desvanecerá con total certeza desde el primer momento que nos
adentremos en el estudio de las páginas que yacen en El ADN de Power Query, y dará lugar a
una intensa curiosidad y una martilleante sensación de exploración y descubrimiento.
Power Query es una tecnología descomunal sin fronteras ni limitaciones, ya que permite:
entender, explorar, preparar, adecuar, limpiar, formatear, integrar, enriquecer, crear, refinar y
hasta resumir datos de forma veloz, intuitiva y coherente. En conclusión: hacer milagros con
los datos.
El presente libro es una obra cuya generatriz es la lógica, a saber, no está destinado a brindar
recetas y soluciones del estilo “copy/paste”, no es el corazón del libro por lo menos, en su
lugar, este texto oscila en desarrollar una explicación de exactitud milimétrica para
conferirnos una compresión profunda de cada aspecto tratado de Power Query, todo ello,
para resolver no solo los escenarios expuestos en sus páginas, sino además, dotarnos del
raciocinio suficiente para dar solución a todo tipo de problemas y variaciones.
Por esta razón, hemos venido desarrollando y mejorando con el pasar de los años la
metodología jerárquica de acciones y operaciones, que, básicamente consiste en una GPS del
largo y ancho espectro de comandos que componen a Power Query, para así lograr: preparar,
limpiar, integrar y enriquecer cualquier base de datos.
xxiii
Algunas personas con una peculiar falta de tino creen que al estar contacto mayoritariamente
con gestores de bases de datos como: SQL, PostgreSQL, Oracle, etc. No deben molestarse de
pasar ni un nanosegundo en la parte de limpieza de datos, pero la realidad va más allá, al ser
Power Query una parte integral del proceso de inteligencia de negocios en algún punto su
manipulación facilitará los desarrollos.
Por otra parte, este libro está diseñado tanto para usuarios de Excel como para usuarios de Power
BI que quieran catapultarse a fronteras inimaginables, llegar a otra dimensión.
xxiv Acerca de Este Libro
Versiones de Software
Power BI Desktop / Excel 2019 y 2016 • No Aplica Totalmente para Excel 2013
Si bien no se hace mucha referencia a Power Query de Excel 2013 ni 2010, gran parte
de la temática que se estudia a lo largo de este texto también aplica a estas versiones
de Excel, sin embargo, se debe tener en mente que las funcionalidades más recientes
no están implementadas.
▪ MS Flow y Common Data Services for Apps: ¿Quieres aplicar Power Query para
Microsoft Flow o CDSA?, las partes 1 a 3 será lo que mejor encaje para ti de este libro,
excluyendo todo aquello que implique el lenguaje M.
xxv
En el libro encontrarás elementos especiales para enriquecer la explicación y para brindar una
lectura más amena.
Cuadros Principales:
▪ Pausemos un momento: Es una pausa activa para señalar temáticas externas, otros
recursos, aclarar conceptos, resaltar conclusiones de lo que se está tratando en este
momento o mencionar algún punto relacionado con el tema o capítulo.
Pausemos un Momento
La técnica anteriormente descrita se aplica para eliminar valores de
error, valores faltantes o según criterio. El único que varía de los tres
pasos es el primero, ya que el valor filtrado se haría por el deseado y
no por vacío. (También es licito pensar en Macros y automatizar el
proceso, tomando ventaja de la grabadora es una encomienda de
complejidad moderada)
▪ ¡Tom nota!: Como su nombre lo indica, este es un cuadro clave para recalcar cosas
importantes, puede ser una conclusión, un concepto, un ejercicio, etc.
¡Toma Nota!
Para agregar saltos de línea entres sentencias de código en el editor
avanzado de Power Query, es suficiente con utilizar la combinación
de teclas: Shift + Enter. Para indexar utiliza la tecla Tab para mayor
rapidez.
xxvi Acerca de Este Libro
¡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)
▪ ¡Referencia Cruzada! Este cuadro es el que aparece con menor frecuencia en el libro,
no obstante, tiene como objetivo brindar bibliografía a otro libro de la colección ADN,
aparecen como sugerencia si se desea profundizar aún más en la temática que se está
tratando en el momento.
¡Referencia Cruzada!
La parte de creación de: indicadores, KPIs, KRIs y métricas para el
análisis de datos es territorio del lenguaje DAX, que corresponda a la
segunda etapa de proceso de inteligencia de negocios, todo esto es
tema de otro libro de la Colección ADN:
El ADN de Power Pivot
ISBN: 978-958-46-8542-7
xxvii
Cuadros Secundarios:
▪ Let’s Play: Este cuadro señala donde encontrar el archivo de trabajo, para esa sección
o apartado que viene incluido en el compendio de archivos.
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 4 puedes encontrar el archivo de Excel con nombre:
CAP4EJ1 – Ventas_Pedidos.xlsx.
¡Descargar!
El reducido espacio de la página hace que la ilustración del
Proceso Business Intelligence sea complicada de ver, no
obstante, puedes descargar desde aquí:
Valores Numéricos
Un tipo de valor numérico en el lenguaje M que es utilizado para
llevar a cabo operaciones aritméticas. Estos valores incluyen:
número entero, entero exponencial, fracciones, fracciones
exponenciales y numero hexadecimal.
xxviii Acerca de Este Libro
▪ Conceptos de Fuego: Los conceptos de fuego son una serie de términos que hemos
creados lo autores del libro, por ello los enmarcamos en recuadro propio y diferente,
para distinguirlo de los conceptos universales del desarrollo teórico a los del equipo
de EFB.
Elementos Complementarios:
▪ Parte II: Limpieza y Adecuación de Datos (Capítulo 4 a 8): Esta segunda parte está
formada por 5 capítulos que orquestan el estudio y profundización de las operaciones
asociadas a la acción de limpieza de datos, es decir: reducción, formateo, rellenado,
transposición, anulación de dinamización y columna dinámica.
▪ Parte III: Integración de Datos (Capítulo 9 a 10): Esta tercera parte está constituida
por 2 capítulos que nos envuelve en un recorrido riguroso en las operaciones que
manipulan múltiples tablas, es decir, anexar y combinar, en resumidas cuentas, trata
sobre la integración de datos.
▪ Parte IV: Lenguaje M (Capítulos 11 a 19): Esta cuarta parte está compuesta por 9
capítulos, aquí brindamos toda la información que conocemos acerca del lenguaje de
funciones de Power Query, también conocido como: M. Véase nota de contenido
resumido.
▪ Anexos (A, B): Al final del libro encontraras dos anexos, los cuales están destinados a
resumir la topología de tablas estudiadas a lo largo del libro y brindar más información
sobre el Intellisense para otras tecnologías distintas a Power BI.
xxxi
Descripción de Capítulos
Cada capítulo es una aventura en sí misma, esto es así porque, en cada uno de ellos
encontraras información preciosa para ser más productivos, además, hallaras huevos de
pascua a otros libros, novelas e incluso series de televisión donde buscamos sorprender al
lector que coincida con el gusto a estas referencias con nosotros.
▪ Capítulo 1: En este capítulo mostramos al desnudo las limitaciones que llego a tener
Excel cuando no contaba con Power Query en su arsenal, además, exploramos su
historia y todas las tecnologías que hoy por hoy cuentan con la mejor funcionalidad
para ETL.
▪ Capítulo 3: El primer hito que pone Power Query a nuestra disposición es la posibilidad
de tomar fuentes de datos de prácticamente cualquier origen, en este capítulo
enfilamos detalle sobre los orígenes estándar.
xxxii Acerca de Este Libro
▪ Capítulo 10: Continua la misma línea que le capítulo 9, donde se ve como combinar
tablas para crear una nueva según ciertos criterios de intersección o extensión de las
consultas, es el capítulo que nos trae el detalle de los tipos de Joins.
▪ Capítulo 11: Este capítulo marca la hora, por fin, de aprender sobre el fino arte de
escribir líneas del lenguaje de funciones de Power Query, conocido más ampliamente
como: M. Aquí se enmarca el conocimiento clave para trabajo óptimo con el Editor
avanzado.
▪ Capítulo 13: Entender el lenguaje M es entender cada tipo de valor que puede
soportar, por lo tanto, las páginas de este capítulo se dedican a indagar y excavar en
cada uno de ellos de forma clara, precisas y con ejemplos. Si bien en este capítulo se
dejan unos cuantos tipos de valores por fuera, el grueso de ellos se ve en él.
xxxiv Acerca de Este Libro
▪ Capítulo 15: Como si fuera un libro de funciones de Excel, en este capítulo se estudian
las funciones atómicas del lenguaje M, para ver las más comunes, su sintaxis,
parámetros y ejemplos. Ver nota en Contenido Breve
▪ Capítulo 16: Siguiendo ese trazo del capítulo 15, en el presente se ven las funciones
más complejas, es decir, aquellas asociadas a tipos de valores como: listas, registros
y tablas. Ver nota en Contenido Breve
▪ Capítulo 19: Al final el día, todo lo estudiado en la parte cuatro del libro tiene como
objetivo este capítulo, ver aplicaciones de casos comunes y situaciones reales
utilizando el lenguaje M. Ver nota en Contenido Breve
xxxv
Anexos
Aunque este libro está concebido como un todo y cada capítulo es parte de un objetivo
global. Está más que claro que este libro esta divido en cuatro partes.
▪ Conocimiento esencial.
▪ Limpieza de datos.
▪ Integración de datos.
▪ Lenguaje M.
Si el lector le urge aprender a consolidar múltiples tablas, puede arrancar con la Parte III sin
ningún problema, no obstante, si tu rutina diaria te demanda adecuar y preparar tablas,
recorre cada capítulo de la Parte II es buen inicio, del mismo modo, si lo que deseas es conocer
acerca del lenguaje M la Parte IV es donde se enfocará tu atención.
Archivos de Trabajo
Uno y cada uno de los archivos que se ven y trabajan a lo largo del libro se encuentran en el
compendio de archivos:
Compendio de Archivos
Incluye archivos de trabajo y documentos extra
La presente obra la hemos creado con un cariño gigantesco junto con una dedicación
desmesurada, y, sobre todo: dejando la piel en la cancha, para así brindarte lo mejor. No
obstante, minimizar a cero errores e inconvenientes de un libro de esta envergadura es una
tarea compleja y de aproximaciones sucesivas.
Por lo anterior este libro cuenta con algo llamado: Programa de Actualización de Contenido,
es decir, que haremos correcciones y mejoras a este texto a lo largo del tiempo, para así
mejorarlo y perfeccionarlo constantemente como un compromiso de los autores para dotarte
con la mejor referencia de Power Query en habla hispana.
Al adquirir este libro quedas registrado automáticamente en nuestra base de datos, por lo que
al momento de ocurrir una actualización te llegará un correo con todas las instrucciones sin
ningún costo adicional.
– Distribuciones:
Estas actualizaciones o versiones mejoradas del libro digital las llamamos Distribuciones y
puedes identificar a cuál corresponde en la página ocho del PDF en la parte inferior.
xli
Tu como el lector de este libro eres uno de los críticos más valioso, por esto es muy importante
para nosotros escuchar de tu parte cualquier opinión, critica, corrección, sugerencia, mejoras,
ilustraciones, consejos, complementos, anomalías etc. En cuyo caso puedes escribirnos al
cualquiera de los siguientes correos electrónicos:
▪ E-mail 1: [email protected]
▪ E-mail 2: [email protected]
También te invitamos que una vez finalices lectura de este libro o en el momento que lo
consideres oportuno nos regales tu retroalimentación, es invaluable para nosotros, lo puedes
hacer en nuestra página de Facebook:
▪ E-mail 1: https://www.facebook.com/ExcelFreeBlog/
xlii Acerca de Este Libro
El ADN de Power Query 43
→ ←
Como no podía ser de otra forma en una primera instancia debemos forjar todo el
conocimiento básico, pero crítico para lograr trabajar con Power Query, mientras
mejores cimientos se tengan mejor la edificación en si, por ello, son tres capítulos
los que constituyen esta primera parte del libro destinada a dotarnos de las mejores
bases posible para un recorrido ameno y certero.
Capítulo 1
El Binomio Perfecto
Si nos pidieran definir Excel en una sola palabra, nuestra
elección sería: Flexibilidad. El vínculo que se genera entre datos,
tablas, gráficos y demás elementos es tan exquisito que se ha
izado con una solidez pétrea como la hoja de cálculo más
importante de los últimos tiempos.
La Distorsión Innegable
Es pan de cada día tener que arreglar archivos de Excel (CSV,
txt, etc.) con formatos enrevesados y prácticamente
destrozados, carcomidos por el desorden. Esencialmente cierto
para el analista de datos y el profesional de inteligencia de
negocios que tropecientas veces al mes tiene que lidiar con
este desafío.
El formato tabular es en
esencia la presentación de
datos en arreglos de filas y O dinos, en algún punto no has querido o te han solicitado
columnas, donde la
estructura de la tabla no crear un reporte de una tabla de datos, que sólo con una
tiene elementos adicionales, hojeada queda uno de piedra; porque la cantidad de anomalías
como: filas en blanco,
columnas en blanco, total e inconsistencias (respecto a un formato tabular) como: filas
generales, subtotales en
en blanco, totales y subtotales, elementos disparas en campos,
categoría. A sí mismo, debe
estar libre de errores, celdas columnas combinados, celdas vacías, etc. Etc. Nos proyectan
vacías y otras anomalías.
en las próximas, cuando menos horas, anclados frente a la PC
www.excelfreeblog.com
El ADN de Power Query 47
www.excelfreeblog.com
48 Capítulo 1 • Fundamentos y Preparación de Datos Inteligente
El proceso ETL es el
término adecuado para Total, sí hubiéramos escrito este texto 6 años atrás está carta
referirnos a la preparación,
limpieza, estandarización y sobre la mesa hubiera sido más lúgubre, sin embargo, el
enriquecimiento de los “complemento” nativo de Excel: Power Query e implementado
datos y todos los engranes
en la maquinaria que ya en múltiples programas de Microsoft zanja el problema, visto
conlleva para ejecutarlo,
más adelante se hablara a que está enfocado en el Proceso ETL.
detalle de esta definición y
su punto crucial en Power
Query, de momento Adelantamos la entrada dramática de Power Query porque
pensémonos en el acrónimo
sabemos que bajo tu ojo clínico de incógnito no iba a durar un
ETL como preparación y
limpieza de datos. suspiro, a pesar de ello, te vamos a mostrar una serie
situaciones muy concretas donde el uso de funcionalidades …
www.excelfreeblog.com
El ADN de Power Query 49
www.excelfreeblog.com
50 Capítulo 1 • Fundamentos y Preparación de Datos Inteligente
Pausemos un Momento
No está de más recapitular que los requisitos para este libro son
mínimos, básicamente un manejo básico de funciones.
Tablas Dinámicas, Macros y demás no es requerido. Las soluciones
que veremos son meramente ilustrativas y no se detallen, pues el
objetivo es verlas más adelante con Power Query.
www.excelfreeblog.com
El ADN de Power Query 51
Pausemos un Momento
Es válido subrayar (y en apoyo a la pausa anterior) que no nos vamos
a zambullir en los detalles de construcción de las fórmulas y su lógica
detrás, únicamente queremos brindar un panorama general de la
complejidad que conllevaban resolver determinadas actividades de
limpieza de datos.
www.excelfreeblog.com
52 Capítulo 1 • Fundamentos y Preparación de Datos Inteligente
Segunda Solución Una segunda solución es cortesía de las tablas dinámicas, para
ello tenemos que rememorar una característica de antaño:
Rangos de Consolidación Múltiples, además debemos usar Drill
Down y dividir texto en columnas
www.excelfreeblog.com
El ADN de Power Query 53
Pausemos un Momento
Más que estar en contra de las macros, que de hecho no es así ni por
asomo, se trata de una invitación a la búsqueda continua de la forma
más eficiente de realizar cuatro tareas esenciales: preparación, análisis
visualización de datos y distribución de información. Por lo previo
preferimos Power Query siempre por encima de VBA en tarea de
preparación de datos.
www.excelfreeblog.com
54 Capítulo 1 • Fundamentos y Preparación de Datos Inteligente
www.excelfreeblog.com
El ADN de Power Query 55
— ¿Sencillo no es así?
Sub Macro1()
ActiveSheet.ListObjects("TelefoniaDatos").Range.AutoFilterField:=1, Criteria1:="="
Rows("1644:1644").Select
Range(Selection, Selection.End(Down)).Select
Selection.Delete Shift:=xlUp
ActiveSheet.ListObjects("TelefoniaDatos").Range.AutoFilter Field:=1
End Sub
www.excelfreeblog.com
56 Capítulo 1 • Fundamentos y Preparación de Datos Inteligente
Pausemos un Momento
La técnica anteriormente descrita se aplica para eliminar valores de
error, valores faltantes o según criterio. El único que varía de los tres
pasos es el primero, ya que el valor filtrado se haría por el deseado y
no por vacío. (También es licito pensar en Macros y automatizar el
proceso, tomando ventaja de la grabadora es una encomienda de
complejidad moderada)
Power Query
Afirmar que Power Query es una poderosa funcionalidad
especializada para la limpieza de datos, sería pecar de
comedido.
www.excelfreeblog.com
El ADN de Power Query 57
www.excelfreeblog.com
58 Capítulo 1 • Fundamentos y Preparación de Datos Inteligente
www.excelfreeblog.com
El ADN de Power Query 59
Proceso ETL
Hay un concepto, más bien un proceso que está
estrechamente relacionado con Power Query y que en
conjunción hacen una simetría en preparación de datos que se
amplifica a lo idílico. Este es el proceso ETL.
www.excelfreeblog.com
60 Capítulo 1 • Fundamentos y Preparación de Datos Inteligente
Inteligencia de Negocios
La preparación de datos es la etapa inicial del proceso de
Inteligencia de negocios, por ello es bueno conocer ¿Qué es
inteligencia de negocios?
Inteligencia de Negocios
Es esencialmente bussiness insights oportunos, precisos, de alto
valor y accionables extraídos gracias al conjunto de estrategias,
aplicaciones, datos, productos y arquitecturas técnicas, los cuales
están enfocados a la creación de conocimiento.
www.excelfreeblog.com
El ADN de Power Query 61
www.excelfreeblog.com
62 Capítulo 1 • Fundamentos y Preparación de Datos Inteligente
¡Descargar!
El reducido espacio de la página hace que la ilustración del
Proceso Business Intelligence sea complicada de ver, no
obstante, puedes descargar desde aquí:
www.excelfreeblog.com
El ADN de Power Query 63
Data Explorer
La raíz de Power Query como muchos piensan no se plantó en
Excel, en realidad todo comenzó en Microsoft Azure Labs Un día
remoto de octubre 2011 se anunció bajo el nombre de Data
Explorer y no fue sino hasta el 27 de febrero del 2013 que
Microsoft tomo la decisión de llevar dicha tecnología como un
complemento para Excel 2013 y Excel 2010.
Power Query
Fue en este punto donde se dedica un equipo al desarrollo y
constante mejora del aún complemento Power Query para
aquella fecha.
www.excelfreeblog.com
64 Capítulo 1 • Fundamentos y Preparación de Datos Inteligente
Power BI Designer
Paralelamente, un nuevo proyecto daba luz: Power BI Designer;
así fue como llamaron los primeros días a Power BI de Escritorio
cunado lanzaron un comunicado en diciembre del 2013, esta
nueva tecnología tendría un foco principal en inteligencia de
negocios, es decir, concentrado a crear reportes interactivos y
compartirlos, todo esto en versión preliminar claro.
Obtener y Transformar
Para el lanzamiento de Excel 2016, se decidió cambiar el
nombre de Power Query a Obtener y Transformar y pasaría a ser
una funcionalidad nativa y 100% embebida de Excel.
www.excelfreeblog.com
El ADN de Power Query 65
www.excelfreeblog.com
66 Capítulo 1 • Fundamentos y Preparación de Datos Inteligente
▪ Se tiene Python
El Siguiente Paso
Para entrarar en la sede y bastión de las acciones y operaciones
de Power Query (pestañas, comandos y paneles) es idóneo tejer
los conceptos básicos, así como conocer su interfaz y
consideraciones claves, para armonizarlos y entrar en el
corazón de Power Query, todo esto será tema del próximo
capítulo.
www.excelfreeblog.com
Capítulo 2
Conceptos Fundamentales
Preparación de Datos
La preparación de datos consiste en el entendimiento de los datos,
que estos a su vez se compone de 4 etapas:
a. Exploración
b. Descripción
c. Selección
d. Calidad
www.excelfreeblog.com
El ADN de Power Query 71
Estas dos partes del algoritmo eran partes sucesivas entre sí,
dicho de otro modo, primero realizábamos el entendimiento de
los datos y luego el proceso ETL, a pesar de ello, estos conceptos
van mutando con el tiempo, principalmente por los esfuerzos
de Microsoft de hacernos la vida más fácil, por lo previo, la parte
de entendimiento ya la realizamos en Power Query una vez
extraído (cargados) los datos, todo gracias a la funcionalidad
de Perfil de datos (Data profiling) que nos facilita esta empresa.
Entendimiento de Datos
www.excelfreeblog.com
72 Capítulo 2 • Ingredientes Esenciales para Trabajar con Power Query
El Proceso ETL
a. Extracción
b. Transformación
c. Carga
Las siglas derivan del inglés: extract, transform and load. Este
proceso consiste en llevar datos de múltiples origines, para
luego hacer la limpieza y transformación necesaria para
finalmente dejarla en el destino listos para el consumo y
utilización para posterior trabajo en análisis.
www.excelfreeblog.com
El ADN de Power Query 73
Pausemos un Momento
Aunque la preparación de datos es la suma del entendimiento y el
proceso ETL, ciertamente en este libro pasaremos gran parte del
tiempo en la fase de transformación del proceso ETL, esto se debe ya
que allí surgen la gran mayoría de desafíos y casos de transformación
que van en aumento, esto no quiere decir que la etapa de extracción
no se contemple ya que le siguiente capítulo lo trata.
www.excelfreeblog.com
74 Capítulo 2 • Ingredientes Esenciales para Trabajar con Power Query
www.excelfreeblog.com
El ADN de Power Query 75
Una consulta está formada por una serie de pasos creados en ¿Qué es una
Consulta?
un orden especifico definidos en el propio lenguaje de expre-
www.excelfreeblog.com
76 Capítulo 2 • Ingredientes Esenciales para Trabajar con Power Query
www.excelfreeblog.com
El ADN de Power Query 77
www.excelfreeblog.com
78 Capítulo 2 • Ingredientes Esenciales para Trabajar con Power Query
www.excelfreeblog.com
El ADN de Power Query 79
¡Descargar!
Para cualquier consulta de la lista de criterios a cumplir para el
formato tabular se puede descargar el siguiente check list:
Definición:
Campos
Datos
Tabular Table
www.excelfreeblog.com
80 Capítulo 2 • Ingredientes Esenciales para Trabajar con Power Query
www.excelfreeblog.com
El ADN de Power Query 81
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 2 puedes encontrar el archivo de Excel con nombre:
CAP2EJ1 – SKUProductos.xlsx.
Ahora:
www.excelfreeblog.com
82 Capítulo 2 • Ingredientes Esenciales para Trabajar con Power Query
www.excelfreeblog.com
El ADN de Power Query 83
Es una Interfaz gráfica que nos permite agregar, editar o ¿Qué es el Editor de
eliminar pasos a la consulta actual (crea por nosotros el código Consultas o Editor
de Power Query?
en el Lenguaje M) para aplicar el proceso de Extracción,
Transformación y Carga de Datos, lo que convierte a Power
Query en una potente herramienta, porque podemos aplicar y
automatizar el proceso ETL sin tener experiencia en la creación
de líneas de código.
www.excelfreeblog.com
84 Capítulo 2 • Ingredientes Esenciales para Trabajar con Power Query
¡Toma Nota!
www.excelfreeblog.com
El ADN de Power Query 85
En Power BI Desktop
Menú de Contexto:
Atajos de comandos
www.excelfreeblog.com
86 Capítulo 2 • Ingredientes Esenciales para Trabajar con Power Query
En Microsoft Excel
Menú de Contexto:
Atajos de comandos
www.excelfreeblog.com
El ADN de Power Query 87
www.excelfreeblog.com
88 Capítulo 2 • Ingredientes Esenciales para Trabajar con Power Query
www.excelfreeblog.com
El ADN de Power Query 89
Propiedades
Nombre
Todas
Nombre
Tenemos la posibilidad de
agregar una descripción que
aparece cuando el puntero
esta encima de la consulta
en el panel de las consultas
Si queremos o no que se
actualice
www.excelfreeblog.com
90 Capítulo 2 • Ingredientes Esenciales para Trabajar con Power Query
www.excelfreeblog.com
El ADN de Power Query 91
Acciones y Operaciones
Acción
o Reducción
▪ Exclusión de filas
▪ Quitar columnas
▪ Promover encabezado
o Formateo de Datos Limpieza de Datos de
Primer Grado:
▪ Transformación a nivel de columnas
Técnicas de Depuración
▪ Reemplazar valores
▪ Dividir columnas
▪ Asignación de nombres
o Transposición
o Rellenar
Limpieza de Datos de
o Anulación de Dinamización (Unpivot) Segundo Grado:
www.excelfreeblog.com
92 Capítulo 2 • Ingredientes Esenciales para Trabajar con Power Query
¡Toma Nota!
Te en cuenta que a las sub-operaciones las llamaremos tan sólo
operaciones en algunas ocasiones a lo largo del texto, puede parecer
una diferencia sutil, pero es lo que nos diferencia en preparación de
datos inteligente.
www.excelfreeblog.com
El ADN de Power Query 93
Acción
▪ INTEGRACIÓN DE DATOS: Consiste en fusionar dos o más tablas para conseguir una
gran tabla maestra con todos los datos que sean de interés para el análisis, la forma
de pegar las tablas depende del análisis que deseemos lograr y de la composición de
las tablas, esta acción compuesta por las siguientes operaciones:
o Anexar (Appende)
o Combinar (Merge)
▪ Externa izquierda
▪ Externa derecha
▪ Externa completa
▪ Asignación de nombres
▪ Interna
▪ Anti izquierda
▪ Anti derecha
Acción
o Enriquecimiento Horizontal
o Enriquecimiento Vertical
www.excelfreeblog.com
94 Capítulo 2 • Ingredientes Esenciales para Trabajar con Power Query
¡Toma Nota!
El Siguiente Paso
¡Basta de teoría! A cargar datos →
www.excelfreeblog.com
Capítulo 3
Introducción
Sino hay datos no es viable hacer mayor cosa, por esta razón
debemos conocer como conectarnos o extraer tablas de
diversos orígenes de datos que alimenten Power Query.
¡Toma Nota!
Queda eximida de toda duda que Power Query proporciona una lista
mastodóntica de conectores, además de posibles nuevos integrantes al
transcurrir el tiempo, por ello te recomendamos el siguiente enlace
para visualizar todos:
www.excelfreeblog.com
El ADN de Power Query 99
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 6 puedes encontrar el archivo de Excel con nombre:
CAP2EJ1 – Ventas_Pedidos.xlsx. (Lo abrimos para un vistazo)
www.excelfreeblog.com
100
www.excelfreeblog.com
Capítulo 3 • Conectores que Pueblan Power Query (Orígenes y Categorías)
Figura 3. 1 - Fragmento de la Tabla Pedidos (La tabla esta acortada en el extremo derecho y en la parte inferior)
El ADN de Power Query 101
www.excelfreeblog.com
102 Capítulo 3 • Conectores que Pueblan Power Query (Orígenes y Categorías)
¡Riesgo: Advertencia!
El conector Excel permitirá visualizar las extensiones: .xlsx, xlsm y xlsb;
pero debemos tener muchísimo cuidado debido a que la única
extensión que cargará correctamente será sólo la .xlsx.
Cualquier otro tipo de extensión asociada a Excel como: .xls, xlsxt, xlst,
xlsm, etc. Ni siquiera permitirá si visualización, entre otras cosas por
compatibilidad y porque algunas son plantillas.
Aquí podemos desplegar dos opciones, una para mostrar solo aquellos elementos
Seleccionados, especialmente útil cuando tenemos una cantidad considerable de
ellos, 200, 300, etc.
Tabla
Hojas
Áreas de Impresión
Nombres Definidos
www.excelfreeblog.com
El ADN de Power Query 103
▪ Tablas Estructuradas
▪ Hojas
▪ Nombres Definidos
▪ Áreas de Impresión
www.excelfreeblog.com
104 Capítulo 3 • Conectores que Pueblan Power Query (Orígenes y Categorías)
www.excelfreeblog.com
El ADN de Power Query 105
▪ Origen
▪ Navegación
▪ Tipo cambiado
¡Toma Nota!
En la imagen anterior se puede ver la barra de fórmulas que enseña
las líneas del lenguaje M, esta no se encuentra habilitada por defecto,
para hacerlo debemos ir a la pestaña Vista y en el grupo Diseño
habilitar la opción de Barra de fórmulas.
www.excelfreeblog.com
106 Capítulo 3 • Conectores que Pueblan Power Query (Orígenes y Categorías)
www.excelfreeblog.com
El ADN de Power Query 107
¡Referencia Cruzada!
La parte de creación de: indicadores, KPIs, KRIs y métricas para el
análisis de datos es territorio del lenguaje DAX, que corresponda a la
segunda etapa de proceso de inteligencia de negocios, todo esto es
tema de otro libro de la Colección ADN:
El ADN de Power Pivot
ISBN: 978-958-46-8542-7
www.excelfreeblog.com
108 Capítulo 3 • Conectores que Pueblan Power Query (Orígenes y Categorías)
¡Riesgo: Advertencia!
Sin un archivo de Excel está cifrado con contraseña, Power BI no lo
podrá cargar, de hecho, arroja el siguiente error:
Ventajas y Desventajas
www.excelfreeblog.com
El ADN de Power Query 109
www.excelfreeblog.com
110 Capítulo 3 • Conectores que Pueblan Power Query (Orígenes y Categorías)
Otros Orígenes
El Siguiente Paso
El capítulo próximo es uno de los más extensos de todo el libro,
debido a que, trata todos los fundamentos en Power Query, por
lo tanto, es el primero en el cual entramos en materia.
www.excelfreeblog.com
→ ←
Los pilares del panteón lo componen cada uno de los capítulos de esta parte, todo
derivada de que, cada operación fundamental: su explicación, lógica, ejercicios,
escenarios comunes y hasta aspectos avanzadas yacen en sus páginas engarzados
con esquemas visuales para una explicación más gráfica.
El Primer Paso
www.excelfreeblog.com
El ADN de Power Query 117
NOTA 2
Lo anterior es así gracias a una magnifica funcionalidad La funcionalidad de perfil
de datos esta 100%
denominada: Perfil de datos o Data Profiling en inglés, la cual nos
disponible desde la
permite en primera instancia extraer los datos (extracción del actualización abril de 2019
para Power BI. A la fecha de
proceso ETL) y luego realizar el entendimiento. publicación de este libro,
para Excel aún no se cuenta
con esta característica
No nos vamos a ir por las ramas así que vamos al grano:
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 4 puedes encontrar el archivo de Excel con nombre:
CAP4EJ1 – Ventas_Pedidos.xlsx.
www.excelfreeblog.com
118 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 119
www.excelfreeblog.com
120 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
¡Toma Nota!
El estudio y detalle de los diferentes elementos que detecta la
extracción de un archivo de Excel desde Power BI Desktop fue tratada
extensamente en el capítulo anterior, en la sección: Orígenes de Datos
Estándar apartado Conector Excel: Pros, Con y Consideraciones.
www.excelfreeblog.com
El ADN de Power Query 121
Figura 4. 5 – Interfaz de Power Query con los datos de elementos Pedidos1 de Excel Extraídos
www.excelfreeblog.com
122 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
Perfil de Datos
www.excelfreeblog.com
El ADN de Power Query 123
La acción que nos invita a tomar Si queremos otra acción respecto a los
Power Query es Quitar los errores errores podemos pulsar clic en los tres
directamente, si pulsamos clic puntos y ver las posibilidades existentes.
encima los errores son removidos.
www.excelfreeblog.com
124 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
¡Riesgo: Advertencia!
Lo primero que recomendamos es el tratamiento de errores
independientemente de cuál sea el tipo de formato, debido a que, sino
los removemos desde un principio podemos tener compartimientos
extraños en los datos, además, en algunos casos las sugerencias no
funcionarán correctamente.
www.excelfreeblog.com
El ADN de Power Query 125
He aquí la figura:
kv
Figura 4. 11 – Distribución de Columnas
www.excelfreeblog.com
126 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
¡Toma Nota!
Si existen muchos elementos distintos acompañados de múltiples
anomalías como en la columna 1, Power Query puede no desplegar el
gráfico, empero, cuando la columna tiene menos valores y pocas
anomalías como es el caso de las columnas 14 y 15 si los presenta.
Esta columna muestra en el gráfico de barras que tiene 5 valores distintos, además,
dicha información se especifica en la parte inferior junto con la cantidad de valores
únicos.
www.excelfreeblog.com
El ADN de Power Query 127
He aquí el resultado:
www.excelfreeblog.com
128 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 129
¡Toma Nota!
Conviene subrayar que, sin importar la operación asociada a las
técnicas de primer grado, ellas utilizan un patrón en las “casillas” para
identificar el cambio que se debe ejecutar, y con esto, la
transformación se aplica a toda la fila o columna.
Limpieza de Datos de
Primer Grado:
Técnicas de Depuración
o Reducción
▪ Exclusión de filas
▪ Quitar columnas
▪ Promover encabezado
o Formateo de Datos
▪ Transformación a nivel de columnas
▪ Reemplazar valores
▪ Dividir columnas
▪ Asignación de nombres
o Transposición
o Rellenar
www.excelfreeblog.com
130 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
¡Toma Nota!
Lo interesante de las operaciones es que en algunos casos es posible
aplicarlas con distintos comandos en el Editor de Consultas.
www.excelfreeblog.com
El ADN de Power Query 131
Técnicas de Depuración
Inicio
Inicio
www.excelfreeblog.com
132 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
Remover Errores
www.excelfreeblog.com
El ADN de Power Query 133
Pausemos un Momento
LA MAGIA DEL CLIC DERECHO:
Como cualquier otro programa, con clic derecho podemos conseguir
muchos comandos asociados a la labor que queremos realiza, por
ejemplo, hace un momento hemos querido eliminar el paso: Errores
quitados, nuestra tendencia es pulsar clic en el icono de la x, sin
embargo, al presionar clic derecho sobre el paso (Errores quitados) no
solo encontraremos el comando: Eliminar, sino también opciones
interesantes como: Eliminar hasta el final, el cual permite (si hay)
eliminar todos los pasos desde el actual (donde hicimos clic derecho)
hasta el último. [Continua la nota y véase imagen …]
www.excelfreeblog.com
134 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
Pausemos un Momento
Si el paso admite
edición, desde aquí Comando Eliminar desde menú
podemos acceder
Elimina del paso actual hasta
Se muestra un cuadro el paso final
donde podemos cambiar
el nombre del paso y
añadir un comentario, Crea una nueva consulta
este comentario se que extrae pdel paso
muestra en un tooltip y anterior al primero paso.
se inserta como línea de
comentario en el código
M.
www.excelfreeblog.com
El ADN de Power Query 135
www.excelfreeblog.com
136 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 137
www.excelfreeblog.com
138 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 139
NOTA
www.excelfreeblog.com
140 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 141
www.excelfreeblog.com
142 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
Otra manera de eliminar deshabilitamos la opción (Nulo), que hace referencia a todas
estos registros incoherentes las celdas que no tienen ningún valor en esa columna.
que aparecen al principio y
al final de la tabla es
utilizando los comandos:
Quitar Filas Superiores y
Quitar Filas Inferiores.
Pero no es recomendable
utilizarlos porque debemos
asignar un número fijo de
filas a quitar contando
desde arriba o desde abajo Figura 4. 29 – Aplicar filtros en la columna 2
y no un parámetro. En el
capítulo 7 se detalla más
este escenario en grados de En el Editor de Power Query, podría parecernos que no se ha
libertad aplicado ningún cambio, puesto que no se ha creado ningún
paso nuevo y tampoco se ve el cambio en el área de resultados,
aunque nada es más alejado de la realidad, porque este filtro
también se agregó al paso anterior y el resultado no se nota ya
que se han eliminado filas ubicadas al final de la tabla, así que
ten esto presente.
www.excelfreeblog.com
El ADN de Power Query 143
www.excelfreeblog.com
144 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
▪ Elegir Columnas
▪ Quitar Columnas
¡Toma Nota!
Como analistas debemos tener criterio y entendimiento del escenario
porque si eliminamos una Columna que puede ser empleada en el
futuro, el traerla de nuevo se convertirá en un proceso bastante
tedioso.
www.excelfreeblog.com
El ADN de Power Query 145
Técnicas de Depuración
Inicio
Proceso / Mecánica
Final
www.excelfreeblog.com
146 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 147
www.excelfreeblog.com
148 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 149
NOTA
www.excelfreeblog.com
150 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 151
www.excelfreeblog.com
152 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
Técnicas de Depuración
Inicio
Proceso / Mecánica
Final
www.excelfreeblog.com
El ADN de Power Query 153
www.excelfreeblog.com
154 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 155
www.excelfreeblog.com
156 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 157
www.excelfreeblog.com
158 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 159
www.excelfreeblog.com
160 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
¡Toma Nota!
Es necesario recalcar que, para aplicar esta operación, es importante
que la columna tenga un tipo de dato asignado, por ejemplo, tipo de
dato Texto, aunque también es aplicable a columnas Numéricas, de
Fecha, o incluso Valores Lógicos.
www.excelfreeblog.com
El ADN de Power Query 161
Técnicas de Depuración
Inicio
Fecha País Cantidad Tx Detalle
31/12/2014 Argentina 10 Producto1
31/12/2014 Argentina 20 Producto 2
31/12/2014 Argentina 30 Producto 3
31/12/2014 Argentina 15 Producto 4
31/12/2014 Argentina 10 Producto 5 Debemos estar seguros de que
31/12/2014 Brasil 11 Producto 1 la columna a la cual vamos a
31/12/2014 Brasil 22 Producto 2 aplicar cambios tiene el tipo de
31/12/2014 Brasil 33 Producto 3 dato asignado.
31/12/2014 Brasil 10 Producto 4
31/12/2014 Brasil 12 Producto 5
Proceso / Mecánica
Fecha País Cantidad Tx Detalle
31/12/2014 Argentina 10 Producto1 • Identificar la columna de tipo
1
31/12/2014 Argentina 20 Producto 2 Texto , para la cual quiero
reemplazar los valores.
31/12/2014 Argentina 30 Producto 3
31/12/2014 Argentina 15 Producto 4
• Asignar la cadena de caracteres a
31/12/2014 Argentina 10 Producto 5 2 reemplazar y los nuevos
31/12/2014 Brasil 11 Producto 1 caracteres por los cuales serán
31/12/2014 Brasil 22 Producto 2 cambiados.
Final
Fecha País Cantidad Tx Detalle
31/12/2014 Buenos Aires 10 Producto1
31/12/2014 Buenos Aires 20 Producto 2
31/12/2014 Buenos Aires 30 Producto 3
31/12/2014 Buenos Aires 15 Producto 4
31/12/2014 Buenos Aires 10 Producto 5
31/12/2014 Brasilia 11 Producto 1
31/12/2014 Brasilia 22 Producto 2
31/12/2014 Brasilia 33 Producto 3
31/12/2014 Brasilia 10 Producto 4
31/12/2014 Brasilia 12 Producto 5
www.excelfreeblog.com
162 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
Error Mecanográfico: La
categoría Black Friday esta
escita erróneamente como
Balck Fraday.
www.excelfreeblog.com
El ADN de Power Query 163
www.excelfreeblog.com
164 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 165
Pausemos un Momento
Reemplazar Valores y Dividir Columna son operaciones de Power
Query que clasifican en esta categoría porque nos ayudan a normalizar
los datos, aunque en la mayoría de los casos son empleadas como
acciones intermedias para llevar a cabo una tarea más grande.
www.excelfreeblog.com
166 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
Técnicas de Depuración
Inicio
Fecha País Cantidad Tx Detalle
31/12/2014 ARGEntina 10.001 PROducTO 1
31/12/2014 ARGEntina 20.001 PRODUCTO 2
31/12/2014 ARGEntina 30.001 PRODucto 3
31/12/2014 ARGEntina 15.003 proDUCTO 4
31/12/2014 ARGEntina 10.001 producto 5
31/12/2014 BRASIL 11.001 PROducTO 1 Debemos estar seguros de que
31/12/2014 bRASIL 22.001 PRODUCTO 2 la columna a la cual vamos a
31/12/2014 BRASIL 33.001 PRODucto 3 aplicar cambios tiene el tipo de
31/12/2014 bRASIL 10.003 proDUCTO 4 dato asignado.
31/12/2014 BRASIL 12.001 producto 5
Proceso / Mecánica
Fecha País Cantidad Tx Detalle
31/12/2014 ARGEntina 10.001 PROducTO 1
• Identifica la columna a
31/12/2014 ARGEntina 20.001 PRODUCTO 2 1 Transformar.
31/12/2014 ARGEntina 30.001 PRODucto 3
31/12/2014 ARGEntina 15.003 proDUCTO 4
31/12/2014 ARGEntina 10.001 producto 5 • Dependiendo del tipo de
2 transformación elegida, la columna
31/12/2014 BRASIL 11.001 PROducTO 1 en cuestión cambia su estructura.
31/12/2014 bRASIL 22.001 PRODUCTO 2
31/12/2014 BRASIL 33.001 PRODucto 3
31/12/2014 bRASIL 10.003 proDUCTO 4
31/12/2014 BRASIL 12.001 producto 5
Final
Fecha País Cantidad Tx Detalle
31/12/2014 Argentina 10.001 Producto1
31/12/2014 Argentina 20.001 Producto 2
31/12/2014 Argentina 30.001 Producto 3
31/12/2014 Argentina 15.003 Producto 4
31/12/2014 Argentina 10.001 Producto 5
31/12/2014 Brasil 11.001 Producto 1
31/12/2014 Brasil 22.001 Producto 2
31/12/2014 Brasil 33.001 Producto 3
31/12/2014 Brasil 10.003 Producto 4
31/12/2014 Brasil 12.001 Producto 5
www.excelfreeblog.com
El ADN de Power Query 167
Técnicas de Depuración
Inicio
Fecha País Cantidad Tx Detalle
31/12/2014 Argentina 10.001 Producto1
31/12/2014 Argentina 20.001 Producto 2
31/12/2014 Argentina 30.001 Producto 3 Debemos estar seguros de que
31/12/2014 Argentina 15.003 Producto 4 la columna a la cual vamos a
31/12/2014 Argentina 10.001 Producto 5 aplicar cambios tiene el tipo de
31/12/2014 Brasil 11.001 Producto 1 dato asignado.
31/12/2014 Brasil 22.001 Producto 2
31/12/2014 Brasil 33.001 Producto 3
31/12/2014 Brasil 10.003 Producto 4
31/12/2014 Brasil 12.001 Producto 5
Proceso / Mecánica
Final
Fecha País Cantidad Tx Detalle
31/12/2014 Argentina 10 Producto1
31/12/2014 Argentina 20 Producto 2
31/12/2014 Argentina 30 Producto 3
31/12/2014 Argentina 15 Producto 4
31/12/2014 Argentina 10 Producto 5
31/12/2014 Brasil 11 Producto 1
31/12/2014 Brasil 22 Producto 2
31/12/2014 Brasil 33 Producto 3
31/12/2014 Brasil 10 Producto 4
31/12/2014 Brasil 12 Producto 5
www.excelfreeblog.com
168 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
Técnicas de Depuración
Inicio
Fecha País Cantidad Tx Detalle
31/12/2014 Argentina 10 Producto1
31/12/2014 Argentina 20 Producto 2
31/12/2014 Argentina 30 Producto 3
31/12/2014 Argentina 15 Producto 4
31/12/2014 Argentina 10 Producto 5 Debemos estar seguros de que
31/12/2014 Brasil 11 Producto 1 la columna a la cual vamos a
31/12/2014 Brasil 22 Producto 2
aplicar cambios tiene el tipo de
31/12/2014 Brasil 33 Producto 3
dato asignado.
31/12/2014 Brasil 10 Producto 4
31/12/2014 Brasil 12 Producto 5
Proceso / Mecánica
Fecha País Cantidad Tx Detalle
31/12/2014 Argentina 10 Producto1 • Identifica la columna a
1
31/12/2014 Argentina 20 Producto 2 Transformar.
31/12/2014 Argentina 30 Producto 3
31/12/2014 Argentina 15 Producto 4
• Dependiendo del tipo de
31/12/2014 Argentina 10 Producto 5 2 transformación, elegida, la
31/12/2014 Brasil 11 Producto 1 columna en cuestión cambia su
31/12/2014 Brasil 22 Producto 2 estructura.
Final
Fecha País Cantidad Tx Detalle
Diciembre Argentina 10 Producto1
Diciembre Argentina 20 Producto 2
Diciembre Argentina 30 Producto 3
Diciembre Argentina 15 Producto 4
Diciembre Argentina 10 Producto 5
Diciembre Brasil 11 Producto 1
Diciembre Brasil 22 Producto 2
Diciembre Brasil 33 Producto 3
Diciembre Brasil 10 Producto 4
Diciembre Brasil 12.001 Producto 5
www.excelfreeblog.com
El ADN de Power Query 169
¡Toma Nota!
El número presentado se muestra en notación exponencial, así:
2,2203E+16. Si queremos ver su valor sin ningún formato, lo único que
debemos hacer es pulsar clic izquierdo en la casilla, con ello en la parte
inferior del panel de resultados se muestra.
www.excelfreeblog.com
170 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 171
www.excelfreeblog.com
172 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
Figura 4. 59 - Alternativa 2
www.excelfreeblog.com
El ADN de Power Query 173
www.excelfreeblog.com
174 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 175
www.excelfreeblog.com
176 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
¡Toma Nota!
Para las etiquetas de las columnas de una tabla es recomendable: No
utilizar ni tildes ni espacios en blanco y cada palabra que la compone
debe iniciar con letra Mayúscula. Aunque no es camisa de fuerza
www.excelfreeblog.com
El ADN de Power Query 177
www.excelfreeblog.com
178 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
C
Figura 4. 70 – Iconos referentes a tipo de dato
www.excelfreeblog.com
El ADN de Power Query 179
C
Figura 4. 71 – Icono de tipo alfanumérico (no asignado)
www.excelfreeblog.com
180 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
Para cambiar el Tipo de Dato de una columna basta con dar clic
sobre el icono que se encuentra en la parte izquierda de la
etiqueta y luego elegimos alguna de las opciones disponibles.
En consecuencia, nos dirigimos a la columna.
www.excelfreeblog.com
El ADN de Power Query 181
www.excelfreeblog.com
182 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
¡Toma Nota!
Es recomendable asignar el tipo de dato de todas las columnas de una
sola vez, para que todo quede alojado en un solo paso de la consulta
www.excelfreeblog.com
El ADN de Power Query 183
www.excelfreeblog.com
184 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
Transposición
Esquema visual:
Descripción
de Entes
Datos
Transpose Table
www.excelfreeblog.com
El ADN de Power Query 185
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 4 puedes encontrar el archivo de Excel con nombre:
CAP4EJ3 – Table Transpose.xlsx.
¡Manos a la obra!
www.excelfreeblog.com
186 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
Pausemos un Momento
www.excelfreeblog.com
El ADN de Power Query 187
¡Let’s Play!
ARCHIVO DE TRABAJO: En el CAP4EJ3 – Table Transpose.xlsx
puedes encontrar la hoja 90G – Rigth. Te invitamos a que
resuelvas este escenario.
www.excelfreeblog.com
188 Capítulo 4 • Limpieza de Datos de Primer Grado, Técnicas de Depuración
El Siguiente Paso
www.excelfreeblog.com
.
El ADN de Power Query 191
Capítulo 5
www.excelfreeblog.com
192 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
Introducción
En el capítulo anterior: Limpieza de Datos de Primer Grado,
Técnicas de Depuración, aprendimos las operaciones básicas que
todo analista debe conocer para transformar y reparar una
tabla, sin embargo, este “kit” de primeros auxilios no está
completo, porque hay situaciones en las que necesitamos llevar
la depuración al siguiente nivel, por esta razón, vamos a añadir
más herramientas que en algún momento dado nos pueden
ahorrar mucho tiempo.
▪ Agregar Columnas.
▪ Rellenar.
▪ Entre otras sorpresas que tenemos preparadas para ti.
www.excelfreeblog.com
El ADN de Power Query 193
¡Toma Nota!
En este capítulo asumimos que se hizo un estudio concientizado del
capítulo previo, porque si bien se puede llegar a entender sin él, lo
más acertado es tener un entendimiento de ellos al dedillo. Nuestra
recomendación, si hace falta: repasar lo visto hasta aquí.
Agregar Columnas
Expandir nuestro conocimiento en la interfaz es importante
previo a los casos especiales, de hecho, es un prerrequisito.
Además, es un buen espacio para conocer y profundizar en
otras partes de esta, en particular estamos hablando de: los
comandos para agregar columnas, así tenemos:
www.excelfreeblog.com
194 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 5 puedes encontrar el archivo de Excel con nombre:
CAP5EJ1 – PedidosParcial.xlsx.
www.excelfreeblog.com
El ADN de Power Query 195
www.excelfreeblog.com
196 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 197
Primer
ejemplo
Suposiciones de
Power Query
Segundo
ejemplo
Suposiciones de
Power Query
www.excelfreeblog.com
198 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
Srcroll down
hasta ver filas:
67,72 y 80.
www.excelfreeblog.com
El ADN de Power Query 199
¡Referencia Cruzada!
La parte de creación de: indicadores, KPIs, KRIs y métricas para el
análisis de datos es territorio del lenguaje DAX que corresponda a la
segunda etapa de proceso de inteligencia de negocios, todo esto es
tema de otro libro de la Colección ADN:
El ADN de Power Pivot
ISBN: 978-958-46-8542-7
www.excelfreeblog.com
200 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
Pausemos un Momento
www.excelfreeblog.com
El ADN de Power Query 201
▪ Referencias
o Referenciar a una columna específica,
incluyendo: limpiar, cortar y tratamiento de
minúsculas y mayúsculas
▪ Transformación de texto
o Combinar
o Reemplazar
o Largo
o Extraer
▪ Primer carácter
▪ Último carácter
▪ Rango
▪ Texto antes de delimitador
▪ Texto después de delimitador
▪ Texto entre delimitadores
▪ Longitud
o Remover caracteres
o Mantener caracteres
▪ Transformación de fechas (Continua …)
o Día
o Día de la semana número
o Día de la semana nombre
o Día del año
o Mes Número
o Mes Nombre
www.excelfreeblog.com
202 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 203
¡Toma Nota!
Todo lo correspondiente a lo que puede realizar las columnas a partir
de ejemplos se puede consultar para más información y actualización
en:
www.excelfreeblog.com
204 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
Columna Condicional
Si-entonces-de lo contario
Columna
Condicional
La situación: Balck Fraday por Black Friday la repetiremos aquí,
pero utilizando como es una prueba lógica, el comando
columna condicional.
¡Manos a la obra!
Figura 5. 6 – Comando kv
de Columna condicional
www.excelfreeblog.com
El ADN de Power Query 205
Cuarto Elemento
www.excelfreeblog.com
206 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
i. Escribir un valor
ii. Seleccionar una columna
iii. Parámetro.
¡Riesgo: Advertencia!
Es supremamente importante respetar las mayúsculas y minúsculas,
puesto que Power Query en sensible a ellas (Case Sensitive), para el
escenario encontramos el patrón lck Fra, no obstante, debemos tener
cuidado en indicar La F en mayúscula,
www.excelfreeblog.com
El ADN de Power Query 207
¡Toma Nota!
Si-entonces-sino-de lo contrario-fin si
www.excelfreeblog.com
208 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
Columna Personalizada
¡Manos a la obra!
www.excelfreeblog.com
El ADN de Power Query 209
www.excelfreeblog.com
210 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
Denominación de
la nueva columna
Fórmula M para la
nueva columna
www.excelfreeblog.com
El ADN de Power Query 211
www.excelfreeblog.com
212 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
¡Toma Nota!
Puedes Crear todo tipo de Columnas Personalizadas usando
operaciones matemáticas y los campos de la tabla en la que estás
trabajando.
www.excelfreeblog.com
El ADN de Power Query 213
Otras Columnas
Estimad(a) lector(a), como lo has podido notar en el
transcurso del presente capitulo, las opciones para crear
campos son bastante poderosas porque es posible añadir
columnas de distintos modos, todo depende de la situación en
la que nos encontremos. Ahora bien, para completar nuestro
arsenal de Agregar Columnas contamos con dos caminos
adicionales, que pueden llegar a ser empleados como paso
intermedio, y así lograr transformaciones más engorrosas, te
hablamos de Columna de Índice y Duplicar Columna, por lo tanto,
iniciemos con la exploración de la primera opción.
www.excelfreeblog.com
214 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
¡Toma Nota!
Si hubiéramos elegido la opción: Desde 0, la columna de índice
empezaría el conteo desde este número, así que debes elegir la
alternativa que mejor se ajuste a tus necesidades.
www.excelfreeblog.com
El ADN de Power Query 215
www.excelfreeblog.com
216 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 217
www.excelfreeblog.com
218 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 219
Técnicas de Depuración
Inicio
Fecha País Cantidad Tx Detalle
31/12/2014 Buenos Aires 13
31/12/2014 14
31/12/2014 15
31/12/2014 16
Existen dos caminos en la
operación de Rellenar: Rellenar
31/12/2014 17 Producto 1
Arriba (Fill Up) y Rellenar Abajo
31/12/2014 Brasilia 18
(Fill Down). En resumen, la
31/12/2014 19 operación de relleno consiste en
31/12/2014 20 copiar la celda de arriba o de abajo
31/12/2014 21 dependiendo del caso, en las
31/12/2014 22 Producto 2 casillas vacías.
Proceso / Mecánica
1 • Identificar la columna a rellenar y seleccionarla
Final
Fecha País Cantidad Tx Detalle
31/12/2014 Buenos Aires 13 Producto 1
31/12/2014 Buenos Aires 14 Producto 1
31/12/2014 Buenos Aires 15 Producto 1
Para aplicar este comando,
debemos estar seguros de que las
31/12/2014 Buenos Aires 16 Producto 1
celdas vacías han sido reconocidas
31/12/2014 Buenos Aires 17 Producto 1 como tal por el Editor de
31/12/2014 Brasilia 18 Producto 2 Consultas. Para esto verificamos
31/12/2014 Brasilia 19 Producto 2 que aparezca la palabra null en
31/12/2014 Brasilia 20 Producto 2 dichas celdas vacías
31/12/2014 Brasilia 21 Producto 2
31/12/2014 Brasilia 22 Producto 2
www.excelfreeblog.com
220 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
¡Riesgo: Advertencia!
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 5 puedes encontrar el archivo de Excel con nombre:
CAP5EJ2 – TransformaciónNull.xlsx. (Lo abrimos para un
vistazo)
www.excelfreeblog.com
El ADN de Power Query 221
Datos Incoherentes
Dos campos
en una sola
Columna
Filas en Blanco
www.excelfreeblog.com
222 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 223
www.excelfreeblog.com
224 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 225
www.excelfreeblog.com
226 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 227
www.excelfreeblog.com
228 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 229
www.excelfreeblog.com
230 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 231
www.excelfreeblog.com
232 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 233
www.excelfreeblog.com
234 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 235
Esquema visual:
Datos de campos
comprimidos casillas.
Datos de campos
comprimidos casillas.
Datos de campos
Zipped Table comprimidos casillas.
www.excelfreeblog.com
236 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
▪ Recursos humanos
▪ Marketing
▪ Arquitectura (dibujo técnico)
▪ Calidad
▪ Recolección de datos con encuestas
▪ Cuerpo de correos electrónicos
▪ Copiado de datos de páginas web
▪ Gestión de salarios e incentivos
¡Toma Nota!
Se puede decir, que es un tipo de formato semiestructurado, puesto
que, no está pulcramente modelado y su organización dista
considerablemente del formato tabular.
www.excelfreeblog.com
El ADN de Power Query 237
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 5 puedes encontrar el archivo de Word con nombre:
CAP5EJ3 – ZippedTable.xlsx (Tablas Comprimidas) Lo abrimos
para dar un vistazo
www.excelfreeblog.com
238 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 239
www.excelfreeblog.com
240 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 241
www.excelfreeblog.com
242 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 243
www.excelfreeblog.com
244 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 245
www.excelfreeblog.com
246 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 247
www.excelfreeblog.com
248 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
▪ Delimitador de Inicio: (
▪ Delimitador de Fin: )
▪ Opciones Avanzadas -> Buscar el delimitador de
Inicio: Desde el final de la entrada
www.excelfreeblog.com
El ADN de Power Query 249
Figura 5. 53 – Columna texto entre delimitadores, que contiene los minutos y segundos
www.excelfreeblog.com
250 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
Figura 5. 54 – Columna texto entre delimitadores, que contiene los minutos y segundos
Para concluir este paso, vamos a dar clic en Aceptar, lo que trae
como resultado la división de la columna en dos, una con los
minutos y otra con los segundos.
www.excelfreeblog.com
El ADN de Power Query 251
Minutos Segundos
Código M
www.excelfreeblog.com
252 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 253
Código M
www.excelfreeblog.com
254 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 255
www.excelfreeblog.com
256 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 257
www.excelfreeblog.com
258 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
Agrupar Por: de acuerdo con los campos que la componen, nunca será un
www.excelfreeblog.com
El ADN de Power Query 259
www.excelfreeblog.com
260 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
▪ Operación: Suma
www.excelfreeblog.com
El ADN de Power Query 261
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 5 puedes encontrar el archivo de Excel con nombre:
CAP5EJ4 - División de Columna Dinámica.xlsx. (Lo abrimos para
un vistazo)
www.excelfreeblog.com
262 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 263
Figura 5. 68 – Navegador
www.excelfreeblog.com
264 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 265
www.excelfreeblog.com
266 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 267
www.excelfreeblog.com
268 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 269
www.excelfreeblog.com
270 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 271
www.excelfreeblog.com
272 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
Al dar clic en Aceptar se crea una nueva consulta con esta tabla
que vamos a manipular un poco:
www.excelfreeblog.com
El ADN de Power Query 273
www.excelfreeblog.com
274 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 275
¡Toma Nota!
Debes realizar este procedimiento al pie de la letra y con una precisión
quirúrgica pues de eso depende que el truco funcione sin ningún
problema
www.excelfreeblog.com
276 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
Figura 5. 88 – Agregar palabra y pegar el código del lenguaje M que recién copiamos
www.excelfreeblog.com
El ADN de Power Query 277
www.excelfreeblog.com
278 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 279
www.excelfreeblog.com
280 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
www.excelfreeblog.com
El ADN de Power Query 281
Pausemos un Momento
Una variación de este mismo caso la hemos compartido en nuestro
canal de YouTube en el vídeo: Cómo convertir en un Crack de Excel.
En el cual se realiza la modificación del código M algo diferente,
además, la tabla se carga desde SharePoint:
Enlace:
www.excelfreeblog.com
282 Capítulo 5 • Aplicaciones Superiores con Técnicas de Depuración
El Siguiente Paso
www.excelfreeblog.com
Capítulo 6
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).
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 287
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
www.excelfreeblog.com
288 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
Formato Tabular
¡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 289
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
290 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
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 ocurre n veces en
disponible en YouTube.
la misma columna, donde n es el número de filas en la
tabla inical.
www.excelfreeblog.com
El ADN de Power Query 291
Versión: A.D.C
Inicio
Proceso / Mecánica
Final
www.excelfreeblog.com
292 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
www.excelfreeblog.com
El ADN de Power Query 293
Versión: A.D.O.C
Inicio
Proceso / Mecánica
Final
www.excelfreeblog.com
294 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
¡Toma Nota!
=
Table.UnpivotOtherColumns
( NombreTabla , {"País"} , "Atributo" , "Valor" )
www.excelfreeblog.com
El ADN de Power Query 295
¡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
296 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
Ley 0
Limpieza Inicial La cuestión es simple, lo primero a realizar es remover:
¡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 297
El archivo es el siguiente:
www.excelfreeblog.com
298 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
Filas en blanco
Columna en blanco
Totales
www.excelfreeblog.com
El ADN de Power Query 299
¡Toma Nota!
En algunas versiones de Power Query y sobre todo en otras
tecnologías: Excel, MS Flow, ect. puede que no promueva la primera
fila como encabezado.
www.excelfreeblog.com
300 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
www.excelfreeblog.com
El ADN de Power Query 301
Primero quitemos filas en blanco, esto es algo muy sencillo que Quitar filas en
ya conocemos, por lo tanto, teniendo cualquier columna Blanco
▪ (nulo)
▪ Ingresos Generados …
▪ Año 2015
▪ Semestre 2015
www.excelfreeblog.com
302 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
www.excelfreeblog.com
El ADN de Power Query 303
www.excelfreeblog.com
304 Capítulo 6 • Materialización Alterna 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.
www.excelfreeblog.com
El ADN de Power Query 305
— Ejecutemos la operación:
www.excelfreeblog.com
306 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
www.excelfreeblog.com
El ADN de Power Query 307
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.
¡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
308 Capítulo 6 • Materialización Alterna 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 primer 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.
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 309
Manos a la obra:
www.excelfreeblog.com
310 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
www.excelfreeblog.com
El ADN de Power Query 311
www.excelfreeblog.com
312 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
¡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 313
www.excelfreeblog.com
314 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
(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.
www.excelfreeblog.com
El ADN de Power Query 315
www.excelfreeblog.com
316 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
(4) Transponer Si bien han quedado combinados, es propicio recordar que las
necesitamos como filas, por lo tanto, transponemos la tabla
nuevamente.
www.excelfreeblog.com
El ADN de Power Query 317
www.excelfreeblog.com
318 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
¡Y voilá!
www.excelfreeblog.com
El ADN de Power Query 319
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.
www.excelfreeblog.com
320 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
¡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.
www.excelfreeblog.com
El ADN de Power Query 321
Figura 6. 28 – rellenar Abajo Primera Columna que corresponde al primer nivel de Rótulo
8. Transponer la tabla.
www.excelfreeblog.com
322 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
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 323
¡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.
Formato Tabular
www.excelfreeblog.com
324 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
¡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 325
Versión: Simplificada
Inicio
¡Información!
Proceso / Mecánica
Final
www.excelfreeblog.com
326 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
¡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 327
www.excelfreeblog.com
328 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
www.excelfreeblog.com
El ADN de Power Query 329
¡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
330 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
¡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 331
www.excelfreeblog.com
332 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
Versión: Expandida
¡Atención!
Los pasos se pueden leer con claridad en
la página anterior.
Final
www.excelfreeblog.com
El ADN de Power Query 333
¡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.
www.excelfreeblog.com
334 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
www.excelfreeblog.com
El ADN de Power Query 335
www.excelfreeblog.com
336 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
www.excelfreeblog.com
El ADN de Power Query 337
Elementos de Fila
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).
www.excelfreeblog.com
338 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
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
www.excelfreeblog.com
El ADN de Power Query 339
¡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.
www.excelfreeblog.com
340 Capítulo 6 • Materialización Alterna de Tablas con Modos de Dinamización
El Siguiente Paso
www.excelfreeblog.com
El ADN de Power Query 343
Capítulo 7
www.excelfreeblog.com
344 Capítulo 7 • Grados de Libertad y Pseudo Generalización NxM
Preámbulo
Power Query es de talante proclive a la sistematización, lo cual
lo dota de esa capacidad magnífica de economizar tiempo en
tareas monótonas, no en vano se abastece de su propio
lenguaje de funciones.
Entremos en materia.
www.excelfreeblog.com
El ADN de Power Query 345
Grados de Libertad
Hemos visto cómo pasar una tabla a formato tabular que tiene
dos encabezados de columnas y dos rótulos de filas, a
continuación, vamos a realizar los pasos para el caso 3x3
donde saltará a la vista que el procedimiento es muy similar,
pero aquí vamos a seguir una ruta ligeramente diferente
debido a que queremos economizar en pasosos, es decir, tratar
de llevar acabo la preparación en la mínima expresión
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 6 puedes encontrar el archivo de Excel con nombre:
CAP7EJ1 – Escenario 3x3.xlsx.
www.excelfreeblog.com
346 Capítulo 7 • Grados de Libertad y Pseudo Generalización NxM
Fila en Blanco
www.excelfreeblog.com
El ADN de Power Query 347
www.excelfreeblog.com
348 Capítulo 7 • Grados de Libertad y Pseudo Generalización NxM
www.excelfreeblog.com
El ADN de Power Query 349
www.excelfreeblog.com
350 Capítulo 7 • Grados de Libertad y Pseudo Generalización NxM
www.excelfreeblog.com
El ADN de Power Query 351
Grado de Libertad
Cuán flexible es el paso creado (función seleccionada en el
lenguaje M) para adaptarse a las modificaciones / actualizaciones
del origen de datos y seguir cumpliendo su objetivo, dicho de
otro modo, que tan autómata es la línea M para el objetivo.
— ¿Cómo podemos hacer que los pasos para remover filas en blanco
sean más flexibles?
www.excelfreeblog.com
352 Capítulo 7 • Grados de Libertad y Pseudo Generalización NxM
Ahora si
www.excelfreeblog.com
El ADN de Power Query 353
rótulos de filas.
3 encabezados y 3 Rótulos
www.excelfreeblog.com
354 Capítulo 7 • Grados de Libertad y Pseudo Generalización NxM
¡Manos a la obra!
www.excelfreeblog.com
El ADN de Power Query 355
www.excelfreeblog.com
356 Capítulo 7 • Grados de Libertad y Pseudo Generalización NxM
www.excelfreeblog.com
El ADN de Power Query 357
Transponer
Transponer
¡Riesgo: Advertencia!
www.excelfreeblog.com
358 Capítulo 7 • Grados de Libertad y Pseudo Generalización NxM
Figura 7. 12 – Fragmento de la tabla después de rellenar las dos primeras columnas por segunda vez
www.excelfreeblog.com
El ADN de Power Query 359
Menú de Contexto
La generalización es:
www.excelfreeblog.com
360 Capítulo 7 • Grados de Libertad y Pseudo Generalización NxM
kv
Figura 7. 15 – Tabla con columnas con anulación de dinamización
www.excelfreeblog.com
El ADN de Power Query 361
La generalización es:
www.excelfreeblog.com
362 Capítulo 7 • Grados de Libertad y Pseudo Generalización NxM
Renombrar columnas
www.excelfreeblog.com
El ADN de Power Query 363
¡Algoritmo!
Pausemos un Momento
Decidimos llamarla pseudo generalización ya que si bien la
generalización para el caso NxM está hecha, la automatización del caso
no ha sido expuesta aún, pues bien, ya que para cualquier caso así sea
50x50 solo basta con seguir los pasos del algoritmo y llegáramos la
solución rápidamente, sin embargo, la ideal será alcanzar una
automatización superior.
www.excelfreeblog.com
364 Capítulo 7 • Grados de Libertad y Pseudo Generalización NxM
El Siguiente Paso
Así hemos tejido las redes que sostienen el esquema general
NxM, no obstante, es indudable que existen muchos otros
escenarios que se desprenden de aquí; bien sea porque
requiere de uno u otro paso adicional, o porque, para mayor
derroche de nuestra creatividad, requiere manipulaciones
superiores o más complejas.
www.excelfreeblog.com
Capítulo 8
Prefacio
www.excelfreeblog.com
El ADN de Power Query 369
Esquema visual:
Datos
Campos
Pila 1
Pila 2
Stacked Table
Pila 3
www.excelfreeblog.com
370 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 8 puedes encontrar el archivo de Excel con nombre:
CAP8EJ1 – Nuevos Gerentes.xlsx.
Nombres de campos
congruentes: Quiere decir
que el nombre de todos
los campos en los grupos
(pilas) deben ser
idénticos, ejemplo:
Nombre y Nombre
www.excelfreeblog.com
El ADN de Power Query 371
Para este escenario nótese que lo nombres de los grupos de los Nombres de Campos
campos son idénticos, esto es algo que vamos a asumir en la Coincidentes
— Manos a la obra:
www.excelfreeblog.com
372 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
▪ Encabezado no congruente
▪ Totales y subtotales
▪ Filas en blanco
▪ Columnas en blanco
www.excelfreeblog.com
El ADN de Power Query 373
www.excelfreeblog.com
374 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
www.excelfreeblog.com
El ADN de Power Query 375
kv
Figura 8. 99 – Formato de destino que se desea obtener
www.excelfreeblog.com
376 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
Nuestra tabla debe lucir con la figura 8.7, pero con una
columna adicional llamada índice que asigna los valores 1 a 18
fila a fila.
www.excelfreeblog.com
El ADN de Power Query 377
www.excelfreeblog.com
378 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
Para cada casilla en el área “naranja” (asumir que no existe ningún valor) mira la intersección
fila (área con borde rojo) – columna (área gris) y busca el valor correspondiente que cumpla
con los dos parámetros en la tabla de inicio en la columna de valor, dicho valor es el que retorna,
sino encuentra nada retorna null
www.excelfreeblog.com
El ADN de Power Query 379
Pausemos un Momento
¿Puedes ver por qué la columna índice no importa si va desde 0 o
desde 1?
El motivo radica en que lo que realmente es importante es crear una
columna que sea parte de los datos que identifique de manera única
cada registro
www.excelfreeblog.com
380 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
Y voila:
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 8 puedes encontrar el archivo de Excel con nombre:
CAP8EJ2 – Nuevos Gerentes.xlsx.
www.excelfreeblog.com
El ADN de Power Query 381
www.excelfreeblog.com
382 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
— Manos a la obra:
www.excelfreeblog.com
El ADN de Power Query 383
www.excelfreeblog.com
384 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
Nombre de la
tabla: tConversion
www.excelfreeblog.com
El ADN de Power Query 385
Seleccionamos Column1
de la consulta Gerentes
Seleccionamos Original de
la consulta tConversion
www.excelfreeblog.com
386 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
Deshabilitar
www.excelfreeblog.com
El ADN de Power Query 387
www.excelfreeblog.com
388 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
www.excelfreeblog.com
El ADN de Power Query 389
El resultado:
www.excelfreeblog.com
390 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
Esquema visual:
Bulky Table
Datos Datos
www.excelfreeblog.com
El ADN de Power Query 391
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 8 puedes encontrar el archivo de Excel con nombre:
CAP8EJ3 – BulkyTable.xlsx.
Bulky Table
Queremos llegar a:
Formato Tabular
Figura 8. 25 – Bulky Table a Formato Tabular
— Manos a la obra:
www.excelfreeblog.com
392 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
www.excelfreeblog.com
El ADN de Power Query 393
www.excelfreeblog.com
394 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
www.excelfreeblog.com
El ADN de Power Query 395
www.excelfreeblog.com
396 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 8 puedes encontrar el archivo de Excel con nombre:
CAP8EJ3 – BulkyTable.xlsx.
— Manos a la obra:
www.excelfreeblog.com
El ADN de Power Query 397
"Fecha"
else
"Cantidad" Código M
www.excelfreeblog.com
398 Capítulo 8 • Transformaciones Superiores con Modos de Dinamización
El Siguiente Paso
Con este capítulo damos por concluido la gran acción de
limpieza de datos, en la siguiente pare del libro nos
ocuparemos de la integración de datos, destinada manipular
múltiples tablas o consultas.
www.excelfreeblog.com
→ ←
Capítulo 9 • Anexar
Capítulo 10 • Combinar y Tipos de Joins
Capítulo 1
Capítulo 9: Anexar
404 Capítulo 9 • Anexar
Introducción
¿Qué es la Integración de Datos?
www.excelfreeblog.com
El ADN de Power Query 405
▪ Anexar
▪ Combinar
¿Qué es Anexar?
www.excelfreeblog.com
406 Capítulo 9 • Anexar
Técnicas de Integración
Inicio
Fecha Ciudad Cantidad Tx Detalle Fecha Ciudad Cantidad Tx Detalle Fecha Ciudad Cantidad Tx Detalle
31/12/2014 Buenos Aires 13 Producto 1 31/12/2014 Brasilia 22 Producto 1 31/12/2014 Bogotá 26 Producto 1
31/12/2014 Buenos Aires 14 Producto 2 31/12/2014 Brasilia 23 Producto 2 31/12/2014 Bogotá 17 Producto 2
31/12/2014 Buenos Aires 15 Producto 3 31/12/2014 Brasilia 25 Producto 3 31/12/2014 Bogotá 10 Producto 3
31/12/2014 Buenos Aires 16 Producto 4 31/12/2014 Brasilia 27 Producto 4 31/12/2014 Bogotá 15 Producto 4
31/12/2014 Buenos Aires 17 Producto 5 31/12/2014 Brasilia 28 Producto 5 31/12/2014 Bogotá 29 Producto 5
Proceso / Mecánica
Fecha Ciudad Cantidad Tx Detalle Final
1 • Definir las
31/12/2014 Buenos Aires 13 Producto 1 consultas a Anexar Fecha Ciudad Cantidad Tx Detalle
31/12/2014 Buenos Aires 14 Producto 2
31/12/2014 Buenos Aires 13 Producto 1
31/12/2014 Buenos Aires 15 Producto 3
31/12/2014 Buenos Aires 14 Producto 2
31/12/2014 Buenos Aires 16 Producto 4
31/12/2014 Buenos Aires 15 Producto 3
31/12/2014 Buenos Aires 17 Producto 5 Une la Tabla 1 con la Tabla
2 , agregándola debajo 31/12/2014 Buenos Aires 16 Producto 4
www.excelfreeblog.com
El ADN de Power Query 407
Las Tablas Coincidentes son Aquellas que describen las mismas Tablas
entidades semánticas y sus elementos, aparte de los nombres Coincidentes
www.excelfreeblog.com
408 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 409
¡Toma Nota!
En el presente capitulo vamos a trabajar con Tablas Coincidentes, pero
es fundamental que tengas en cuenta que, si cuentas con Tablas No
Coincidentes y aplicas la operación de Anexar, se pueden presentar
problemas en la consulta, aunque todo se puede arreglar manipulando
los pasos.
Anexar Consultas
Anexar dos o Más Consultas
¡Let’s Play!
www.excelfreeblog.com
410 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 411
www.excelfreeblog.com
412 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 413
www.excelfreeblog.com
414 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 415
www.excelfreeblog.com
416 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 417
www.excelfreeblog.com
418 Capítulo 9 • Anexar
Pausemos un Momento
www.excelfreeblog.com
El ADN de Power Query 419
Subir Tabla
Quitar Tabla
Bajar Tabla
www.excelfreeblog.com
420 Capítulo 9 • Anexar
Pausemos un Momento
www.excelfreeblog.com
El ADN de Power Query 421
www.excelfreeblog.com
422 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 423
Pausemos un Momento
La opción Anexar Consultas no es muy recomendable de utilizar
porque no crea una consulta nueva para consolidar las tablas, sino que
añade a una consulta existente las demás tablas y esto puede llegar a
confundirnos así que nuestro consejo: siempre utilizar Anexar
Consultas para Crear una Nueva. Y ocultar de la vista de informe las
que no serán empleadas.
www.excelfreeblog.com
424 Capítulo 9 • Anexar
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 9 puedes encontrar el archivo de Excel con nombre:
CAP9EJ2 - Población.xlsx. vamos a abrirlo para darle un vistazo
www.excelfreeblog.com
El ADN de Power Query 425
www.excelfreeblog.com
426 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 427
www.excelfreeblog.com
428 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 429
www.excelfreeblog.com
430 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 431
www.excelfreeblog.com
432 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 433
www.excelfreeblog.com
434 Capítulo 9 • Anexar
Ahora solo queda resta, dar clic en Cerrar y Aplicar, con lo cual,
ya tenemos la tabla lista para ser utilizada en Power BI. No
olvides guardar el archivo de Power BI y ocultar las demás
consultas.
www.excelfreeblog.com
El ADN de Power Query 435
www.excelfreeblog.com
436 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 437
www.excelfreeblog.com
438 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 439
www.excelfreeblog.com
440 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 441
www.excelfreeblog.com
442 Capítulo 9 • Anexar
Pausemos un Momento
www.excelfreeblog.com
El ADN de Power Query 443
www.excelfreeblog.com
444 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 445
www.excelfreeblog.com
446 Capítulo 9 • Anexar
¡Let’s Play!
www.excelfreeblog.com
El ADN de Power Query 447
Figura 9. 56 – Producción_1999
Figura 9. 57 – Producción_2011
Figura 9. 58 – Producción_2015
www.excelfreeblog.com
448 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 449
www.excelfreeblog.com
450 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 451
www.excelfreeblog.com
452 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 453
www.excelfreeblog.com
454 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 455
www.excelfreeblog.com
456 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 457
www.excelfreeblog.com
458 Capítulo 9 • Anexar
Figura 9. 77 – Transponer
www.excelfreeblog.com
El ADN de Power Query 459
www.excelfreeblog.com
460 Capítulo 9 • Anexar
www.excelfreeblog.com
El ADN de Power Query 461
www.excelfreeblog.com
462 Capítulo 9 • Anexar
Pausemos un Momento
El Siguiente Paso
En el siguiente capítulo seguiremos explorando una operación
más de integración de datos, en este caso combinar.
www.excelfreeblog.com
Capítulo 10
Preámbulo
En el capítulo anterior, enfocamos nuestros esfuerzos en
conocer la primera operación diseñada específicamente para
integrar datos y aprendimos que con Anexar podemos fusionar
tablas, una debajo de otra para conseguir una gran Tabla
Maestra, aunque, esa es solo la punta del iceberg, porque en la
presente sección hablaremos de la segunda operación para
consolidar datos: Combinar.
¿Qué es Combinar?
www.excelfreeblog.com
El ADN de Power Query 467
Técnicas de Integración
Inicio
Fecha Ciudad Cantidad Código Producto Código Producto Nombre Producto Marca Producto
31/12/2014 Buenos Aires 13 P01 P01 Iphone 8 Apple
31/12/2014 Buenos Aires 14 P02 P02 Iphone X Apple
31/12/2014 Buenos Aires 16 P04 P03 Galaxy S8 Samsung
31/12/2014 Buenos Aires 17 P05 P04 Galaxy S9 Samgung
31/12/2014 Brasilia 25 P03 P05 Huawei P10 Huawei
31/12/2014 Brasilia 27 P04
31/12/2014 Brasilia 28 P05
Tabla 2
31/12/2014 Bogotá 26 P01
31/12/2014 Bogotá 17 P02
31/12/2014 Bogotá 10 P03 Tabla 1
Proceso / Mecánica
Fecha Ciudad Cantidad Código Producto Código Producto Nombre Producto Marca Producto
31/12/2014 Buenos Aires 13 P01 P01 Iphone 8 Apple
Final
Fecha Ciudad Cantidad Código Producto Nombre Producto
31/12/2014 Buenos Aires 13 P01 Iphone 8
31/12/2014 Buenos Aires 14 P02 Iphone X
31/12/2014 Buenos Aires 16 P04 Galaxy S9
31/12/2014 Buenos Aires 17 P05 Huawei P10 Para utilizar la
31/12/2014 Brasilia 25 P03 Galaxy S8 Operación de Combinar,
31/12/2014 Brasilia 27 P04 Galaxy S9 tiene que existir una
31/12/2014 Brasilia 28 P05 Huawei P10 columna común entre
31/12/2014 Bogotá 26 P01 Iphone 8
ambas tablas
31/12/2014 Bogotá 17 P02 Iphone X
31/12/2014 Bogotá 10 P03 Galaxy S8
www.excelfreeblog.com
468 Capítulo 10 • Combinar y Tipos de Joins
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 10 puedes encontrar el archivo de Excel con nombre:
CAP10EJ1 - Productos.xlsx. vamos a abrirlo para darle un vistazo
www.excelfreeblog.com
El ADN de Power Query 469
www.excelfreeblog.com
470 Capítulo 10 • Combinar y Tipos de Joins
¡Referencia Cruzada!
Si quieres aprender sobre la creación de relaciones tienes que moverte
al territorio del lenguaje DAX que corresponde a la segunda etapa de
proceso de inteligencia de negocios, todo esto es tema de otro libro
de la Colección ADN:
El ADN de Power Pivot
ISBN: 978-958-46-8542-7
www.excelfreeblog.com
El ADN de Power Query 471
www.excelfreeblog.com
472 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 473
www.excelfreeblog.com
474 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 475
www.excelfreeblog.com
476 Capítulo 10 • Combinar y Tipos de Joins
Pausemos un Momento
www.excelfreeblog.com
El ADN de Power Query 477
www.excelfreeblog.com
478 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 479
www.excelfreeblog.com
480 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 481
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 10 puedes encontrar el archivo de Excel con nombre:
CAP10EJ2 – (Relación M – M).xlsx. vamos a abrirlo para darle
un vistazo
www.excelfreeblog.com
482 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 483
www.excelfreeblog.com
484 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 485
www.excelfreeblog.com
486 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 487
www.excelfreeblog.com
488 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 489
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 10 puedes encontrar el archivo de Excel con nombre:
CAP10EJ3 - Combinar con Múltiples Columnas xlsx. vamos a
abrirlo para darle un vistazo
www.excelfreeblog.com
490 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 491
www.excelfreeblog.com
492 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 493
Una nueva.
www.excelfreeblog.com
494 Capítulo 10 • Combinar y Tipos de Joins
Pausemos un Momento
www.excelfreeblog.com
El ADN de Power Query 495
www.excelfreeblog.com
496 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 497
www.excelfreeblog.com
498 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 499
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 10 puedes encontrar el archivo de Excel con nombre:
CAP10EJ4 - Tipos de Uniones xlsx. vamos a abrirlo para darle
un vistazo
www.excelfreeblog.com
500 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 501
www.excelfreeblog.com
502 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 503
www.excelfreeblog.com
504 Capítulo 10 • Combinar y Tipos de Joins
Tabla Izquierda
Tabla Derecha
www.excelfreeblog.com
El ADN de Power Query 505
Tipos de Uniones
Inicio
1 Tabla Izquierda
Elementos Coincidentes
2 Tabla Derecha
Elementos NO Coincidentes
www.excelfreeblog.com
506 Capítulo 10 • Combinar y Tipos de Joins
Final
Izquierda Derecha
www.excelfreeblog.com
El ADN de Power Query 507
www.excelfreeblog.com
508 Capítulo 10 • Combinar y Tipos de Joins
Valores Faltantes
www.excelfreeblog.com
El ADN de Power Query 509
Tipos de Uniones
Inicio
1 Tabla Izquierda
Fecha de Pedido Cantidad Sku
11/02/2019 2 B01
12/02/2019 1 L01
13/02/2019 3 C01
14/02/2019 2 B02
Elementos Coincidentes
15/02/2019 4 B07
16/02/2019 1 B08
2 Tabla Derecha
Elementos NO Coincidentes
Final
Izquierda Derecha
Tabla Izquierda
Tabla Derecha
www.excelfreeblog.com
El ADN de Power Query 511
Figura 10. 62 – Botón Expandir para añadir Columnas de la tabla Productos al Consolidado
www.excelfreeblog.com
512 Capítulo 10 • Combinar y Tipos de Joins
Valores Faltantes
www.excelfreeblog.com
El ADN de Power Query 513
Tipos de Uniones
Inicio
1 Tabla Izquierda
Fecha de Pedido Cantidad Sku
11/02/2019 2 B01
12/02/2019 1 L01
13/02/2019 3 C01
14/02/2019 2 B02
Elementos Coincidentes
15/02/2019 4 B07
16/02/2019 1 B08
2 Tabla Derecha
Elementos NO Coincidentes
Final
Izquierda Derecha
Tabla Izquierda
Tabla Derecha
www.excelfreeblog.com
El ADN de Power Query 515
Figura 10. 67 – Botón Expandir para añadir Columnas de la tabla Productos al Consolidado
www.excelfreeblog.com
516 Capítulo 10 • Combinar y Tipos de Joins
Valores Faltantes
Figura 10. 68 – Resultado del Tipo de Unión: Externa Completa
www.excelfreeblog.com
El ADN de Power Query 517
Tipos de Uniones
Inicio
1 Tabla Izquierda
Fecha de Pedido Cantidad Sku
11/02/2019 2 B01
12/02/2019 1 L01
13/02/2019 3 C01
14/02/2019 2 B02
Elementos Coincidentes
15/02/2019 4 B07
16/02/2019 1 B08
2 Tabla Derecha
Elementos NO Coincidentes
Final
Izquierda Derecha
www.excelfreeblog.com
518 Capítulo 10 • Combinar y Tipos de Joins
Tabla Izquierda
Tabla Derecha
www.excelfreeblog.com
El ADN de Power Query 519
Figura 10. 72 – Botón Expandir para añadir Columnas de la tabla Productos al Consolidado
www.excelfreeblog.com
520 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 521
Tipos de Uniones
Inicio
1 Tabla Izquierda
Fecha de Pedido Cantidad Sku
11/02/2019 2 B01
12/02/2019 1 L01
13/02/2019 3 C01
14/02/2019 2 B02
Elementos Coincidentes
15/02/2019 4 B07
16/02/2019 1 B08
2 Tabla Derecha
Elementos NO Coincidentes
Final
Izquierda Derecha
www.excelfreeblog.com
522 Capítulo 10 • Combinar y Tipos de Joins
Tabla Izquierda
Tabla Derecha
www.excelfreeblog.com
El ADN de Power Query 523
Figura 10. 77 – Botón Expandir para añadir Columnas de la tabla Productos al Consolidado
www.excelfreeblog.com
524 Capítulo 10 • Combinar y Tipos de Joins
Filas que solo están en la Tabla Izquierda Valores Faltantes (No están en la Tabla Derecha)
www.excelfreeblog.com
El ADN de Power Query 525
Tipos de Uniones
Inicio
1 Tabla Izquierda
Fecha de Pedido Cantidad Sku
11/02/2019 2 B01
12/02/2019 1 L01
13/02/2019 3 C01
14/02/2019 2 B02
Elementos Coincidentes
15/02/2019 4 B07
16/02/2019 1 B08
2 Tabla Derecha
Elementos NO Coincidentes
Final
Izquierda Derecha
www.excelfreeblog.com
526 Capítulo 10 • Combinar y Tipos de Joins
Tabla Izquierda
Tabla Derecha
www.excelfreeblog.com
El ADN de Power Query 527
Figura 10. 82 – Botón Expandir para añadir Columnas de la tabla Productos al Consolidado
www.excelfreeblog.com
528 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 529
Tipos de Uniones
www.excelfreeblog.com
530 Capítulo 10 • Combinar y Tipos de Joins
¡Let’s Play!
ARCHIVO DE TRABAJO: En el compendio de archivos y carpeta
Capítulo 10 puedes encontrar el archivo de Excel con nombre:
CAP10EJ5 - Coincidencia Difusa.xlsx. vamos a abrirlo para darle
un vistazo
www.excelfreeblog.com
El ADN de Power Query 531
www.excelfreeblog.com
532 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 533
www.excelfreeblog.com
534 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 535
www.excelfreeblog.com
536 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 537
www.excelfreeblog.com
538 Capítulo 10 • Combinar y Tipos de Joins
www.excelfreeblog.com
El ADN de Power Query 539
www.excelfreeblog.com
540 Capítulo 10 • Combinar y Tipos de Joins
El Siguiente Paso
En el siguiente capítulo seguiremos explorando una operación
más de integración de datos, en este caso combinar
www.excelfreeblog.com
→ ←
NOTA El Lenguaje M
¡Toma Nota!
El lector que conoce F# se sentirá identificado con el lenguaje M, ya
que, también sigue el paradigma de programación funcional, que
también tiene Python en menor medida.
www.excelfreeblog.com
El ADN de Power Query 547
UI para Programar en M
▪ Barra de Fórmulas
▪ Cuadro de Diálogo: Columna Personalizada
▪ Editor Avanzado
www.excelfreeblog.com
548 Capítulo 11 • Elementos y Herramientas Primordiales para Trabajar con M
Primera Opción
www.excelfreeblog.com
El ADN de Power Query 549
NOTA
A la fecha de escritura de
este libro únicamente
Power BI contiene todas las
opciones y últimas
implementaciones para un
mejor manejo de la interfaz
para escribir código M.
Nuestra recomendación, es
que realices el estudio de
esta tercera parte del libro
con Power BI con la última
actualización instalada.
Segunda Opción
Vista → Uso Avanzado → Editor Avanzado
Tercera Opción
Inicio → Consulta → Editor Avanzado
www.excelfreeblog.com
550 Capítulo 11 • Elementos y Herramientas Primordiales para Trabajar con M
www.excelfreeblog.com
El ADN de Power Query 551
Pausemos un Momento
El editor avanzado mostrado previamente variará drásticamente al que
se te mostrará en tu Power Query (si es la misma consulta la que se
visualiza)
Lo anterior es así porque para una mayor legibilidad y presentación
hemos manipulado las funciones M y demás elementos, es decir,
hemos agregado:
Espacios, tabulación, saltos de líneas, retornos de carro, alineación
entre, otros.
Todo en pro de una mejor lectura.
www.excelfreeblog.com
552 Capítulo 11 • Elementos y Herramientas Primordiales para Trabajar con M
Opciones de Presentación
www.excelfreeblog.com
El ADN de Power Query 553
www.excelfreeblog.com
554 Capítulo 11 • Elementos y Herramientas Primordiales para Trabajar con M
Reglas de Formato
let
a = 1,
b=2
in
Código M b
www.excelfreeblog.com
El ADN de Power Query 555
¡Toma Nota!
Para agregar saltos de línea entres sentencias de código en el editor
avanzado de Power Query, es suficiente con utilizar la combinación
de teclas: Shift + Enter. Para indexar utiliza la tecla Tab para mayor
rapidez.
www.excelfreeblog.com
556 Capítulo 11 • Elementos y Herramientas Primordiales para Trabajar con M
www.excelfreeblog.com
El ADN de Power Query 557
Depuración integrada
Por ejemplo:
Tatúate esto:
www.excelfreeblog.com
558 Capítulo 11 • Elementos y Herramientas Primordiales para Trabajar con M
TOOLTIP de ayuda
Figura 11. 11 – Tooltip de ayuda para manejo de error (Quick Fix y Peek Problem)
kv
Figura 11. 12 – Peek Problem Activado
www.excelfreeblog.com
El ADN de Power Query 559
Post-mortem debugging
— ¡Boooooooooooooooooom!: Error.
www.excelfreeblog.com
560 Capítulo 11 • Elementos y Herramientas Primordiales para Trabajar con M
www.excelfreeblog.com
El ADN de Power Query 561
Consideraciones
— ¿Qué es el IntelliSense?
¡Riesgo: Advertencia!
REPETIMOS Y EN APOYO A LA NOTA DE COSTADO:
La generosidad del Intellisense la tenemos disponible únicamente para
el Power Query en Power BI desde la actualización de abril del 2019
de manera full, esto quiere decir, que para Excel y otras tecnologías a
LA fecha de escritura de este libro aún no ha sido implementado.
www.excelfreeblog.com
562 Capítulo 11 • Elementos y Herramientas Primordiales para Trabajar con M
El Siguiente Paso
www.excelfreeblog.com
El ADN de Power Query 565
Capítulo 12
www.excelfreeblog.com
566 Capítulo 12 • Expresiones, Declaración de Variables y Literales
Introducción
¡Let’s Play!
ARCHIVO DE TRABAJO: Para trabajar el presente capítulo no
necesitamos ningún archivo en particular, solamente basta con
crear un Power BI en blanco y guardarlo con cualquier nombre.
Pestaña: Inicio
Grupo: Nueva Consulta
Opciones: Nuevo Origen
Comando: Consulta en Blanco
www.excelfreeblog.com
El ADN de Power Query 567
www.excelfreeblog.com
568 Capítulo 12 • Expresiones, Declaración de Variables y Literales
Expresiones
Cada parte en el lenguaje M consiste en bloques de creación,
el cual está constituido por una variable y una expresión. Una
expresión es una fórmula utiliza para construir un valor. La
primera a conocer por excelencia es la expresión Let-in.
¡Toma Nota!
Cada declaración de variable se indica en su propia sentencia, por
decirlo coloquialmente: en su propia línea de código.
Principio básico: Las declaraciones se dividen entre sí con el símbolo
coma (,) obligatoriamente, ejemplo:
let
A = 10,
B = A + 10
in
B
www.excelfreeblog.com
El ADN de Power Query 569
Expresión: «in»
¡Toma Nota!
En el «in» no tiene que ir necesariamente el nombre de la última
variable declarada en el «let», de hecho, ni siquiera es necesario que
vaya una variable declarada en el «let».
Los detalles de esto se verán más adelante.
• Ejemplo:
Let
A = 10,
B = 20,
C = 30,
D= A + B + C
E=B+C
In
D
www.excelfreeblog.com
570 Capítulo 12 • Expresiones, Declaración de Variables y Literales
Declaración de Variables
NOTA Hemos mencionado que lo que va en el cuerpo de la expresión
«let» son otras expresiones, a estas se les puede ver también
M es sensible a mayúsculas
y minúsculas, por lo tanto, como líneas de código para declaración de variables, pero:
la variable A es diferente a
la variable a. Además, se de — ¿Cómo se declara una variable?
respetar en toda la interfaz,
la palabra let la detecta, sin
En primer lugar y para que no quede ningún ápice de duda,
embargo, Let no.
brindemos una definición:
Declaración de Variable
La declaración de variable consiste en definir un espacio en
memoria para almacenar algo, a este espacio en memoria se le
asigna un nombre único para fácil identificación, por ello al
nombre de la variable también se le llama: Identificador.
Declaración en VB.NET
Nombre de la variable
(identificador)
Literal: indica el
www.excelfreeblog.com
El ADN de Power Query 571
Lenguaje M
Nombre de la variable
(Identificador)
Literal: indica el
DECLARACIÓN DE VARIABLE
¡Toma Nota!
NombreVariables = 8 as text
www.excelfreeblog.com
572 Capítulo 12 • Expresiones, Declaración de Variables y Literales
Ejemplo 1:
VARIABLE EXPRESIÓN
NombreVariable = 8
Ejemplo 2:
DECLARACIÓN DE VARIABLES
www.excelfreeblog.com
El ADN de Power Query 573
Representación en el Editor
let
a = 1,
b = 2,
c = a + b,
in
Código M
c
www.excelfreeblog.com
574 Capítulo 12 • Expresiones, Declaración de Variables y Literales
Ingresos = 10000,
_Gastosas = 2000,
#"Ingresos Totales" = 8000,
#"1/2Ingresos" = 4000,
Código M #"??Ingresos"
www.excelfreeblog.com
El ADN de Power Query 575
Literales
Un literal en programación es un valor escrito exactamente
igual como debe ser interpretado o almacenado.
let
x = 77,
y = true,
z = null
w = 2.5e-7
in Código M
z
let
f = #date( 2019, 04, 27 )
in
f Código M
www.excelfreeblog.com
576 Capítulo 12 • Expresiones, Declaración de Variables y Literales
Algunas referencias llaman a todo simplemente literal, esto esta bien si se desea.
Comentarios
www.excelfreeblog.com
El ADN de Power Query 577
Ejemplos:
let
t = #table(
{"x", "y"},
{ {1, 2}, Código M
{1, 0}
}
)
in
t
www.excelfreeblog.com
578 Capítulo 12 • Expresiones, Declaración de Variables y Literales
El Siguiente Paso
www.excelfreeblog.com
El ADN de Power Query 581
Capítulo 13
www.excelfreeblog.com
582 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
Clases de Valores
▪ Valores primitivos
▪ Valores estructurados
www.excelfreeblog.com
El ADN de Power Query 583
Valores: Numéricos
Valores Numéricos
Un tipo de valor numérico en el lenguaje M es utilizada para
llevar a cabo operaciones aritméticas. Estos valores incluyen:
número entero, entero exponencial, fracciones, fracciones
exponenciales y numero hexadecimal.
www.excelfreeblog.com
584 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
let
a = 29,
b = 29e9,
c = 3.14,
d = -1.5e3,
e = 0xff
Código M in
e
Casos Especiales También tenemos unos Casos Especiales que también quedan
en la sobrilla de valores numéricos.
www.excelfreeblog.com
El ADN de Power Query 585
Ejemplos:
let
f = +0,
g = -0,
h = #infinity,
i = -#infinity,
k = #nan Código M
in
k
www.excelfreeblog.com
586 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
www.excelfreeblog.com
El ADN de Power Query 587
type number.
let
a = 20,
b = 99,
c = a + b,
d = 77e8,
e = d*c
in Código M
e
Valores: Fecha
Valores Fecha
Sabemos que las fecha son máscaras para números y en su
representación estos valores de fecha empiezan desde el 1 de
enero del 0001 (era común del calendario gregoriano) al 31 de
diciembre del 9999.
www.excelfreeblog.com
588 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
let
f = #date(2019,4,23),
g = #date(2018,6,14),
h = #date(2016,3 ,17),
i = #date(2015 ,4,24)
Código M in
f
www.excelfreeblog.com
El ADN de Power Query 589
Ejemplo:
let
a = #date(2019,4,23),
b = #date(2018,6,14),
c=a-b
in
// el resultado es de tipo duración Código M
c
www.excelfreeblog.com
590 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
type date
Valores: Hora
Valores Fecha
El valor de tipo fecha consiste en el número de tics desde la
media noche, esto viene a ser el número de tics de 100
nanosegundos que han transcurridos en un reloj de 24 horas,
por lo tanto, el máximo número de tics es: 23:59:59.9999999.
▪ 1 < hora ≤ 24
▪ 1 < minutos ≤ 59
▪ 1 < segundos ≤ 59
www.excelfreeblog.com
El ADN de Power Query 591
Ejemplo:
let
a = #time(14,30,0),
b = #time(9,37,50),
c = #time(24,0, 0),
in
Código M
c
let
a = #time(14,30,0),
b = #time(9,37,50),
c = a <> b
in
Código M
// El valor retornado es lógico (bololena)
c
www.excelfreeblog.com
592 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
Ejemplo:
let
k = #time(14,30,0),
q = #time(9,37,50),
p=k-q
in
Código M q
www.excelfreeblog.com
El ADN de Power Query 593
type time
Las restricciones para cada parámetro son los mismo que para
fecha y hora, los dejamos a continuación para visualizar todo
en un mismo lugar.
¡Toma Nota!
Las tablas de operadores se extrapolan fácilmente bien sea del tipo
fecha o del tipo hora, ya que son exactamente lo mismo, lo que varia
es el operando especifico en la segunda tabla de operaciones.
www.excelfreeblog.com
594 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
type datetime
www.excelfreeblog.com
El ADN de Power Query 595
#datetimezone (
año, mes, día,
hora, minutos, segundos,
desfase-hora, desfase-minutos)
Consideraciones adicionales:
www.excelfreeblog.com
596 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
Ejemplo:
let
s = #datetimezone(2013,02,26, 09,15,00, 09,00)
in
s
Código M
Al igual que todos los valores que tiene que ver con el tiempo
Operaciones las operaciones con valores de fecha se dividen en dos partes,
primero cuando ambos operandos son fechas:
Ejemplo:
let
z1 = #datetimezone(2013,02,26, 09,15,00, 09,00),
z2 = #datetimezone(2014,07,11, 10,17,00, 09,00),
z3 = z1 = z2
Código M in
z3
www.excelfreeblog.com
El ADN de Power Query 597
Ejemplo:
let
z1 = #datetimezone(2013,02,26, 09,15,00, 09,00),
z2 = #datetimezone(2014,07,11, 10,17,00, 09,00),
z3 = z1 - z2
in Código M
z3
www.excelfreeblog.com
598 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
type datetimezone
Valores: Duración
www.excelfreeblog.com
El ADN de Power Query 599
Ejemplo 1:
let
// 5.5 segundos
a = #duration(0, 0, 0, 5.5),
// -5.5 segundos
b = #duration(0, 0, 0, -5.5),
// 5.5 minutos
c = #duration(0, 0, 5, 30),
// 4.5 minutos
d = #duration(0, 0, 5, -30),
// 1 día Código M
e = #duration(0, 24, 0, 0),
// 1 día
f = #duration(1, 0, 0, 0)
in
f
Ejemplo 2:
let
// 2 días
a = #duration(2, 22, 57, 3)
in
a Código M
www.excelfreeblog.com
600 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
Al igual que todos los valores que tiene que ver con el tiempo
Operaciones las operaciones con valores de duración se dividen en dos
partes, primero cuando ambos operandos son fechas:
www.excelfreeblog.com
El ADN de Power Query 601
type duration
Valores: Texto
Ejemplo:
let
// Debe ir siempre entre comillas dobles
a = "El ADN de Power Query"
in
a Código M
www.excelfreeblog.com
602 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
Ejemplo:
Let
var1 = "Escuela",
var2 = "De Inteligencia de Negocios",
var3 = "ESCUELA",
var4 = "DE INTELIGENCIA DE NEGOCIOS",
var5 = (var & var2) = (var3 & var4)
in
var5
www.excelfreeblog.com
El ADN de Power Query 603
type text
Valores: Lógico
Valores Lógicos
Un tipo de valor lógicos también conocido como booleano es
aquel que puede representar valores lógicos binarios, esto es, 2
valores, que representan verdadero o falso, normalmente son
indicados en cualquier lenguaje en inglés: true o false.
www.excelfreeblog.com
604 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
Ejemplo:
Let
f = false,
v = true
in
Código M v
Ejemplo:
let
a = false,
b = true,
c = a and b
in
Código M c
www.excelfreeblog.com
El ADN de Power Query 605
type logical
▪ Ausencia de un valor
▪ Valor indeterminado
▪ Estado desconocido de un valor
www.excelfreeblog.com
606 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
Operaciones Las operaciones con valores Nulo son las siguientes, aunque
de debe prestar especial atención al comportamiento que
surge de cada uno:
¡Riesgo: Advertencia!
NOTA 1:
El valor null no es igual a una cadena de caracteres vacía: "" ni tampoco
es igual a espacio o caracteres no imprimibles, es decir, tabulación,
marcas de párrafo, espacios especiales y retornos (enters).
En definitiva, y grábate esto a fuego: null es únicamente igual null.
NOTA 2:
Por otra parte, al utilizar cualquiera de los siguientes operadores de
comparación (>, >=, <, <=) sin incluir (=, <>) donde uno de los
operandos es un valor null, entonces, el resultado no es un valor
lógico sino también un valor de tipo null.
No obstante, cuando se utiliza los operadores (=, <>) y uno de los
operados involucrados es un valor null, entonces, el valor retornado
es lógico.
www.excelfreeblog.com
El ADN de Power Query 607
Ejemplos:
let
a = null,
b = null,
c = true,
d = 5,
e = "",
f = a = b, // Retorna: true
g = a = d, // Retorna: false
h = a = c, // Retorna: false
Código M
i = a = e, // Retorna: false
in
k
www.excelfreeblog.com
608 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
type null
Valores: Binarios
#binary({0x00,0x01,0x02,0x03})
Sus operadores:
type binary
www.excelfreeblog.com
El ADN de Power Query 609
▪ Operador de compatibilidad: is
▪ Operador de aserción: as
www.excelfreeblog.com
610 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
Operador is
let
a = 12,
b = #date(2019,4,23),
c = #time(14,30,0),
d = true,
e = null,
v1 = a is number, //true
v2 = b is date, //true
Código M
v3 = c is logical, //false
v4 = d is null, // false
v5 = e is time //false
in
v5
Operador as
Ejemplo:
let
a = 1 as number,
in
a is number
Código M
www.excelfreeblog.com
El ADN de Power Query 611
Tenemos:
▪ Listas (List)
▪ Registro (Record)
▪ Tablas (Table)
▪ Funciones (Function)
▪ Tipos (Types)
¡Toma Nota!
Cuando importamos tablas a Power Query, cargamos comúnmente
tablas, no obstante, ellas pueden contener anidación de registros, litas
y tablas, especialmente, cuando se trabajo con archivos de JASON,
XML o incluso cuando trabajamos con el conector desde una carpeta
www.excelfreeblog.com
612 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
Valores de Lista
Una lista es una secuencia ordenada de valores primitivo o
estructurados que se pueden enumerar. Los valores producidos
por un alista pueden ser de cualquier tipo, como: numéricos,
lógicos, listas, tablas, etc.
Sintaxis de Inicialización:
{ Valor1 , Valor2 , … }
Puede ser
1. Un valor primitivo, ejemplo: 12
2. Un valor estructurado, ejemplo: {1,2}
3. Una expresión, ejemplo: (12+5)/7
www.excelfreeblog.com
El ADN de Power Query 613
Ejemplos:
let
// Lista de valores numéricos
a = {1, 2, 3, 4, 5, 6, 7},
// Lista de textos
b = {"A","B","C","D"},
// Lista alfanumérica
c = {1, "A", 2, "B"},
// Lista de Listas
d = {{1,2}, {3,4,7}, {7,7}, {9,1,2,5}},
let
// Lista de autorelleno
a = {1 .. 7}
// Que es equivalente a {1:7}
in
Código M
a
www.excelfreeblog.com
614 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
let
a = { "A" .. "K" },
in
a
Código M
let
a = { 1 , 4 , 5 .. 15 , 27 , 31 , 50 .. 60 },
in
a
Código M
www.excelfreeblog.com
El ADN de Power Query 615
let
emp = {}
in
emp
Código M
Ejemplo:
let
lst1 = { 1 , 2 , 3 },
lst2 = { 4 , 5 , 6 },
lst3 = list1 & lst2
in
lst3 Código M
www.excelfreeblog.com
616 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
Ejemplo:
let
a = { 1 , 4 , 5 .. 15 , 27 , 31 , 50 .. 60 },
a1 = a{0} // retorna el valor: 1
b = { 7 , .. 29 },
b1 = b{7} // retorna el valor: 14
in
c1
www.excelfreeblog.com
El ADN de Power Query 617
type list
www.excelfreeblog.com
618 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
Sintaxis de Inicialización:
[ X = 1 , Y = 2]
let
// registro con valores de campo numéricos
a = [ A = 1 , B = 2 , C = 3 , D = 4, E = 5 ] ,
in
c
www.excelfreeblog.com
El ADN de Power Query 619
let
// Registro de registros
r = [ M = [X = 1 , Y = 2] ,
N = [Q = 2 , P = 7 , K = 9] ,
O = [Z = 1 , W = 2]
]
// Registro de listas
e=[A={1,2,3},
B={4,5,6},
C={7,8,9}, Código M
],
// Registro de mixto
l=[A={1,2,3},
N = [Q = 2 , P = 7 , K = 9],
C = #time(14,30,0)
]
In
l
let
emp = []
in
emp
Código M
www.excelfreeblog.com
620 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
Ejemplo:
let
a = [ A = 1 , B = 2 , C = 3 , D = 4, E = 5 ] ,
b=[F=6,G=7,H=8,I=9],
c=a&b
Código M in
c
www.excelfreeblog.com
El ADN de Power Query 621
type record
Valores de Tabla
Un tipo de valor tabla es una secuencia ordenada de filas, y una
fila es una secuencia ordenada de valores, el tipo tabla determina
la longitud de todas las filas en la tabla, los nombres de las
columnas el tipo de estas y su estructura.
www.excelfreeblog.com
622 Capítulo 13 • Tidpos de Valores sus Operaciones y Valores Intrínsecos
Comentarios Finales
www.excelfreeblog.com
dcxxiii
Epílogo
Si bien con todas las tablas preparadas y armonizadas con el formato tabular hemos
alcanzado un gran paso, lo cierto es que, esto es hasta ahora la primera etapa en el proceso
de inteligencia de negocios, puesto que por más bonita que estén nuestras consultas para
que realmente cobren sentido debemos extraer información de ellas.
El lenguaje DAX es nuestro siguiente destino: Así que, sin más dilación: a estudiar el lenguaje
DAX
El ADN de Power Query 625
→ ←
www.excelfreeblog.com
El ADN de Power Query 627
Anexo A
Topología de Tablas
INTRODUCCIÓN
*******
Todo con el fin de crear ejemplos, guías, referencias y funciones personalizadas para
este tipo de situaciones, bien sea CASOS comunes o de frecuencia mínima. Al
momento de escritura del libro El ADN de Power Query tan sólo se quiere plantear la
idea inicial, más no es aún un desarrollo completo de lo que se quiere conseguir. A
continuación, un brevísimo resumen:
www.excelfreeblog.com
628 Anexo A • Topología de Tablas
Es un formato que presenta todos los datos en arreglos de filas (registros) y columnas
(campos), sin incluir ninguna especie de etiquetas ni totales a parte de los nombres de los
campos. Se dice que es óptimo cuando cumple todo el check list.
www.excelfreeblog.com
El ADN de Power Query 629
Es el formato típico que resultado de la creación de una tabla dinámica sencilla, es decir,
es una tabla que resumen información en filas y columnas para mostrar un agregado en
sus valores de intersección.
Es un formato que comprime los datos de otros campos en unas cuantas casillas en una
única columna, en ellas no sólo puede estar la información del nombre del campo sino
también los datos de los elementos en sí.
www.excelfreeblog.com
630 Anexo A • Topología de Tablas
www.excelfreeblog.com
El ADN de Power Query 631
Anexo B
Microsoft Intellisense para Excel
INTRODUCCIÓN
*******
Por lo tanto, buscar una manera alterna para crear código sin incurrir en errores.
www.excelfreeblog.com
632 Anexo B • Intellisense para Excel
Notepad++
www.excelfreeblog.com
El ADN de Power Query 633
En la ruta:
www.excelfreeblog.com
634 Anexo B • Intellisense para Excel
REFERENCIAS
Nosotros hemos aprendido Power Query, limpieza de datos y el lenguaje M gracias a la gran
de recursos que han desarrollado y publicado grandes expertos y divulgadores en la temática,
gracias a sus: Libros, Academias virtuales, recursos escritos y audiovisuales; este texto es una
realidad en habla hispana, de hecho, temario de este libro en diversos momentos se basan
directamente en contenido de estas grandes personas.
En esta parte te queremos dejar todos los libros que, a lo largo de los últimos años, nosotros
lo autores del presente texto hemos adquirido y estudiado para profundizar, interiorizar e
indagar en Power Query y lenguaje M. Todos los libros descritos inmediatamente son magia
pura y de cada uno de ellos podrás aprender diferentes cosas y utilidades extraordinarias;
es importante, advertir que todos ellos están en inglés, pero no dejan de ser obras de la
mayor relevancia en todo el mundo.
Christopher Webb, Ken Plus, Miguel Escobar, Gil Raviv, Reza Rad, Lars Schreiber, Imke
Feldmann, Mike Girvin, Ruth Pozuelo Y Uwe Mester.
! GRACIAS!
www.excelfreeblog.com
El ADN de Power Query 635
El primer libro sobre Power Query se haya escrito, y aunque data del año del 2014 es una
excelente referencia aún en las fechas actuales, puesto que fue escritor con Excel y Power BI en
conjunto. Para nosotros es un clásico una bibliografía obligada para los amantes de la preparación
de datos con Microsoft.
La guía por excelencia para Power Query y lenguaje M a nivel mundial. Este libro puso a
disposición de toda la humanidad conocimiento nunca documentado, explicado de manera clara
y sencilla, de hecho, es hoy por hoy la referencia número uno en Power Query. ¿Vas enserio?,
entonces, este libro debe estar en tu biblioteca.
▪ La segunda edición de este libro viene en camino: Master Your Data with Excel and
Power BI.
¡Una obra maestra!, un libro justo para encontrar otras temáticas para expandir las posibilidades
en transformación de datos y aplicaciones astutas con el lenguaje M. Otras de las guías
imprescindibles para nosotros los autores en aprendizaje práctica y profundización en Power
Query.
Reza Rad nos brinda a todos una guía gratuita sobre Power Query, y no porque sea libre de
costo es mala o inferior a otras obras, es más, es un excelente libro que trata los fundamentos,
aspectos intermedios, algunas aplicaciones avanzadas y hasta no enseña sobre el lenguaje M
Como dirían en inglés: This is thecnical as hell, sin embargo, en este documento de menos de
150 páginas Microsoft nos brinda todo el conocimiento técnico concerniente al lenguaje de
funciones de Power Query, M. ¡Es gratis!
www.excelfreeblog.com
636 Anexo B • Intellisense para Excel
www.excelfreeblog.com
El ADN de Power Query 637
www.excelfreeblog.com
638 Anexo B • Intellisense para Excel
www.excelfreeblog.com