top of page

Power BI: Fundamentos del lenguaje M

Updated: Mar 29




1. ¿Qué es el lenguaje M?

El lenguaje M es un lenguaje declarativo, lo que significa que describes lo que quieres que se haga con los datos en lugar de cómo hacerlo. Es un lenguaje conciso y fácil de aprender, lo que lo convierte en una buena opción para usuarios no Informáticos.


2. ¿Para qué se utiliza el lenguaje M?

El lenguaje M se utiliza principalmente para:

  • Transformar datos: Puedes limpiar, transformar y agregar nuevos datos a tu conjunto de datos.

  • Conectar a diferentes orígenes de datos: Puedes conectarte a una amplia variedad de orígenes de datos, como archivos CSV, bases de datos SQL y servicios web.

  • Crear consultas: Puedes crear consultas para recuperar datos específicos de un origen de datos.


3. Elementos básicos del lenguaje M:

  • Expresiones: Las expresiones son las unidades básicas del lenguaje M. Se utilizan para calcular valores, filtrar datos y crear nuevas variables.

  • Funciones: Las funciones son bloques de código que se pueden reutilizar para realizar tareas comunes.

  • Tipos de datos: El lenguaje M tiene una variedad de tipos de datos, como texto, números y fechas.


Ejemplos de Instrucciones básicas en M:


Conexión a un archivo:

let
    // Paso 1: Cargar el archivo CSV
    Origen = Csv.Document(File.Contents("C:\Datos\datos.csv"),[Delimiter=",", Columns=2, Encoding=65001, QuoteStyle=QuoteStyle.None]),

    // Paso 2: Promover la primera fila como encabezados
    Encabezados = Origen{0},
    Datos = Table.PromoteHeaders(Table.Skip(Origen,1))
in
    Datos

Filtrar:

let
    // Paso 1: Cargar el archivo CSV
    Origen = Csv.Document(File.Contents("C:\Datos\datos.csv"),[Delimiter=",", Columns=2, Encoding=65001, QuoteStyle=QuoteStyle.None]),

    // Paso 2: Promover la primera fila como encabezados
    Encabezados = Origen{0},
    Datos = Table.PromoteHeaders(Table.Skip(Origen,1))

    // Paso 3: Aplicar el filtro WHERE
    Filtro = Table.SelectRows(Datos, each [Salario] <= 1800)
in
    Filtro 

Agregar nueva columna:

let
    // Paso 1: Cargar el archivo CSV
    Origen = Csv.Document(File.Contents("C:\Datos\datos.csv"),[Delimiter=",", Columns=2, Encoding=65001, QuoteStyle=QuoteStyle.None]),

    // Paso 2: Promover la primera fila como encabezados
    Encabezados = Origen{0},
    Datos = Table.PromoteHeaders(Table.Skip(Origen,1))

    // Paso 3: Aplicar el filtro WHERE
    Filtro = Table.SelectRows(Datos, each [Salario] <= 1800)

   // Paso 4: Agregar una nueva columna calculada
    NuevaColumna = Table.AddColumn(Filtro, "RangoSalario", each if [Salario] >= 500 and [Salario] <= 800 then "Minimo" else "Alto")
in
    NuevaColumna

216 views

Comments


bottom of page