Botón para abrir el Menú Botón para cerrar el Menú
Logo da empresa Alura
Iniciar Sesión Nuestros Planes
Formaciones Conoce a Luri
  • Programación _
  • Front End _
  • Data Science _
  • DevOps _
  • Innovación y Gestión _
Artículos de Tecnología > Data Science

Power BI: conociendo los lenguajes M y DAX

Ana Duarte
Ana Duarte
26/05/2024

Compartir

Mira este artículo:
  1. Uso del lenguaje M
  2. Uso del lenguaje DAX
  3. Consideraciones
  4. ¿Quieres profundizar más?

power BI - conociendo los lenguajes M y DAX-portada01-con logo

Una cosa es cierta: se puede programar en Power BI y presentaremos las posibilidades de hacerlo a lo largo de este texto con los dos lenguajes principales: el lenguaje DAX (Data Analysis Expressions) y el lenguaje M (M Query), y su impacto en los análisis realizados con Power BI.

Para comprender mejor el rendimiento y la diferencia entre los dos lenguajes, M y DAX, tengamos en cuenta el siguiente escenario: supongamos que necesites analizar informaciones sobre las ventas de una empresa y tienes varias fuentes de datos que incluyen fechas y valores de ventas y categorías de productos.

Tu misión es crear un informe en Power BI Desktop con datos consistentes y disponibles y mostrar el promedio de ventas por categoría de producto.

Uso del lenguaje M

Para iniciar nuestra demanda, es importante cargar todas las fuentes de datos a Power Query, para que podamos obtener datos de diferentes fuentes y visualizar diferentes recursos de procesamiento de datos,lo que se ejecuta a través de un clic. Si observas la captura de pantalla del menú de Power Query a continuación, notarás varios botones que te permiten transformar los datos. Podemos destacar, por ejemplo, las funciones de reemplazar los valores, cambiar el tipo y dividir columna.

power BI - conociendo los lenguajes M y DAX-img01 - alt-text: Menú de la página de inicio de Power Query con las funciones de obtención de datos, administración de consultas y columnas, reducción de filas, ordenación, transformación y obtención de conclusiones de IA.


power BI - conociendo los lenguajes M y DAX-img02 - alt-text: Menú Transformar de Power Query con características de transformación de tablas, cambios en columnas de tipo texto, número, fecha y hora y general, y finalmente una sesión con la posibilidad de ejecutar scripts de R y Python.

Volviendo a nuestra misión, con los datos ya cargados en Power Query, es necesario realizar cambios muy propios de un analista de datos: la separación de valores a través de la coma, la eliminación de columnas y el cambio de encabezado y recorte, todas estas transformaciones dan como resultado información más consistente para construir nuestro informe final.

power BI - conociendo los lenguajes M y DAX-img03 - alt-text: Una tabla a la izquierda con sabores de dulces en filas con muchas repeticiones y separados por coma. Al medio, una flecha azul. A derecha, una tabla con un sabor por fila.

Estos pasos se crearon accediendo al menú de Power Query, pero ¿sabías que todos estos cambios se escribieron en M? Para acceder a esto, debemos ir a la opción "Editor avanzado" de la pestaña 'Consulta' en la página de inicio de Power Query.

power BI - conociendo los lenguajes M y DAX-img04 - alt-text: Menú de inicio de Power Query en el que se resalta el botón

Al hacer clic en el botón, podemos acceder a una página con los códigos en M que hace referencia a los cambios que hemos realizado en los datos:

power BI - conociendo los lenguajes M y DAX-img05 - alt-text: Editor Avanzado de Power Query, donde se ve el código em M, y el botón Listo resaltado em verde

Accediendo a esta página ya podemos mencionar el primer beneficio de utilizar el lenguaje M: control total sobre la transformación de datos y los pasos realizados. Esto se logró a través del registro de las transformaciones en un lenguaje formal y, además, este código sirve como documentación de los tratamientos realizados, lo que facilita la conferencia y reproducibilidad del proyecto.

También podemos mencionar que usar el lenguaje M para procesar los datos también te ayuda en la compleja manipulación de datos, ya que no todos los cambios se pueden ejecutar de manera óptima usando solo los botones disponibles en Power Query y este vacío puede ser llenado por el lenguaje M.

Uso del lenguaje DAX

Siguiendo nuestra misión, una vez que tenemos los datos procesados y preparados para extraer nuestros análisis, ahora empezaremos a calcular las ventas medias. Para esta etapa, nos apoyaremos en el lenguaje DAX (Data Analysis Expressions).

Una forma de hacerlo es usar DAX para crear una medida con tu conjunto de datos. Una de las rutas posibles es haciendo clic con el botón derecho en una de tus tablas y seleccionando la opción "Nueva medida".

power BI - conociendo los lenguajes M y DAX-img06 - alt-text: menú de datos en Power BI Desktop, se selecciona una tabla y de ella sale un menú desplegable, entre las opciones la segunda llamada

Al hacerlo, se creará una nueva medida y se la vinculará a la tabla previamente seleccionada, tras lo cual aparecerá una barra de fórmulas en el menú superior en la que podremos utilizar el lenguaje DAX. Para nuestro problema, necesitamos el promedio de ventas, que se calculará utilizando la columna que almacena la cantidad de ventas Cant_Ventas de la tabla HistoricoVentas.

Utilizaremos la función AVERAGE para devolver el promedio deseado. Después de crearla, es posible usar la medida llamada Promedio_Ventas para componer las visualizaciones y continuar con nuestro informe.

power BI - conociendo los lenguajes M y DAX-img07 - alt-text: Función Promedio_Ventas

Toda la lógica del lenguaje se puede entender bien con tres aspectos: contexto de línea, contexto de filtro e iteraciones. Lo que hace que el lenguaje sea aplicable a diferentes contextos de negocio y, de forma resumida, sea posible construir cálculos mirando individualmente las filas de la tabla y teniendo en cuenta también los filtros seleccionados en tu informe.

Además, manejamos mejor situaciones complejas y repetitivas al recorrer todo el conjunto de datos de forma iterativa. Y si quieres entender mejor estos 3 conceptos, ya te recomiendo el curso Power BI: DAX: Contextos e Iteraciones, que trabaja muy bien estos aspectos.

Para componer nuestro informe de ventas, utilizamos el lenguaje DAX para crear una medida: el promedio de ventas. Esta medida solo hace uso de la función AVERAGE. Sin embargo, este lenguaje ofrece una amplia gama de funciones, que satisfacen diversas necesidades de cálculo.

Además de medidas, DAX también se puede aplicar en diferentes escenarios, como la creación de columnas y tablas calculadas, capaces de generar nuevos insights a partir de su modelo. Otra aplicación es la interacción con aspectos de seguridad a nivel de fila, permitiendo el filtrado de información específica para ciertos usuarios.

Consideraciones

En resumen, el lenguaje M se utiliza para obtener, manipular y transformar datos brutos, mientras que el lenguaje DAX se utiliza para cálculos y análisis en modelos de datos. Ambos son eficaces y desempeñan funciones clave y complementarias en la creación de informes y análisis eficaces utilizando las herramientas de Microsoft y, especialmente, en Power BI.

power BI - conociendo los lenguajes M y DAX-img08 - alt-text: La imagen muestra dos cuadrados uno al lado del otro, el primero está escrito

Por último, tanto el lenguaje M como el lenguaje DAX se usan principalmente en los productos de Microsoft. El "M" es el lenguaje de Power Query, que se encuentra en Power BI, Excel y Analysis Services, y DAX también se puede usar en estos productos. Sin embargo, sirven para diferentes propósitos y se utilizan en diferentes contextos.

¡Ahora ya sabes que es posible codificar en Power BI! Además de aprovechar su interfaz intuitiva con botones, menús y ventanas, característica de los productos de Microsoft, podemos procesar datos y crear medidas además de "arrastrar, hacer clic y soltar" los elementos visuales en el lienzo. Con la usabilidad de la plataforma y el uso de DAX y M, pudimos democratizar aún más los procesos de análisis de datos.

¿Quieres profundizar más?

En este artículo aprendiste más sobre los dos lenguajes, sus diferencias y sus principales impactos en el análisis de datos realizado principalmente en Power BI, ¡pero el conocimiento no se detiene aquí! En la plataforma Alura tenemos muchos otros contenidos para que profundices aún más en este tema y saques el máximo partido a tu análisis de datos. Te dejo con algunas sugerencias a continuación:

¿No sabes nada de Power BI y quieres estar preparado para los principales retos del análisis de datos? Asegúrate de consultar el contenido de la formación de Power BI que muestra todos los pasos principales para crear informes.

power BI - conociendo los lenguajes M y DAX-autor01

Ana Duarte

Soy licenciada en Estadística y actualmente estoy estudiando Ciencias de la Computación. He trabajado como científica de datos en el ámbito educativo y financiero y hoy soy instructora en Alura y voluntaria en el equipo de proyectos del grupo Data Girls. Me apasiona transformar los datos en información inteligente utilizando la ciencia de datos en diversos tipos de aplicaciones. Aparte de eso, siempre estoy siguiendo alguna serie y buscando nuevas rutas para andar en bici.

Ana Duarte
Ana Duarte

Sou bacharela em Estatística e atualmente curso Ciência da Computação. Já atuei como cientista de dados no ramo educacional e financeiro e hoje sou instrutora na Escola de Dados da Alura e voluntária na equipe de projetos do grupo Data Girls. Sou apaixonada por transformar dados em informação inteligente usando a ciência de dados em diversos tipos de aplicação. Fora isso, sempre estou acompanhando alguma série e procurando novas rotas para andar de bike.

Artículo Anterior
Pandas Python: ¿Qué es, para qué sirve y cómo descargarlo?
Siguiente Artículo
Explorando los conceptos de latitud y longitud en Power BI

Ver otros artículos sobre Data Science

Navegación

  • Planes
  • Instructores
  • Blog
  • Política de privacidad
  • Términos de uso
  • Sobre nosotros
  • Preguntas frecuentes

¡CONTÁCTANOS!

  • ¡Quiero entrar en contacto!

Blog

  • Programación
  • Data Science
  • Front End
  • Innovación y Gestión
  • DevOps

AOVS Sistemas de Informática S.A CNPJ 05.555.382/0001-33

SÍGUENOS EN NUESTRAS REDES SOCIALES

YouTube Facebook Instagram Linkedin Whatsapp Spotify

NOVEDADES Y LANZAMIENTOS

Aliados

  • Programa de aceleração Scale-Up Endeavor
  • En Alura somos unas de las Scale-Ups seleccionadas por Endeavor, programa de aceleración de las empresas que más crecen en el país.
  • Growth Academy 2021 do Google For Startups
  • Fuimos unas de las 7 startups seleccionadas por Google For Startups en participar del programa Growth Academy en 2021
Alura

Powered by

Caelum

AOVS Sistemas de Informática S.A CNPJ 05.555.382/0001-33

SÍGUENOS EN NUESTRAS REDES SOCIALES

YouTube Facebook Instagram Linkedin Whatsapp Spotify

Cursos

Cursos de Programación
Lógica de Programación | Java
Cursos de Front End
HTML y CSS | JavaScript | React
Cursos de Data Science
Data Science | Machine Learning | Excel | Base de Datos | Data Visualization | Estadística
Cursos de DevOps
Docker | Linux
Cursos de Innovación y Gestión
Transformación Ágil | Marketing Analytics

Alura

  • Educação em Tecnologia

    • logo fiap FIAP
    • logo casa do codigo Casa do Código
    • logo pm3 PM3 - Cursos de Produto
  • Mais Alura

    • logo alura start START BY Alura
    • logo alura lingua Alura Língua
    • logo alura para empresas Alura Para Empresas
    • logo alura latam Alura LATAM
  • Comunidade

    • logo tech guide Tech Guide
    • logo 7 days of code 7 days of code
    • logo Hipsters ponto Jobs Hipsters ponto Jobs
  • Podcasts

    • logo Hipster Network Hipster Network
    • logo Hipsters ponto Tech Hipsters ponto Tech
    • logo Dev sem fronteiras Dev sem Fronteiras
    • logo Like a Boss Like a Boss
    • logo IA Sob Controle IA Sob Controle
    • logo Mesa de Produto Mesa de Produto
    • logo Decode Decode
    • logo FIAPCast FIAPCast