Introducció

En aquest tema, explorarem les funcions avançades de DAX (Data Analysis Expressions) que et permetran realitzar anàlisis més complexes i detallades en Power BI. Aquestes funcions són essencials per a qualsevol analista de dades que vulgui aprofitar al màxim les capacitats de Power BI.

Conceptes Clau

  1. Funcions de manipulació de taules: Permeten crear i modificar taules dins de les mesures i columnes calculades.
  2. Funcions de filtratge: Utilitzades per aplicar filtres específics a les dades.
  3. Funcions de temps: Faciliten l'anàlisi de dades temporals.
  4. Funcions de jerarquia: Permeten treballar amb dades jeràrquiques de manera eficient.

Funcions de Manipulació de Taules

SUMMARIZE

La funció SUMMARIZE crea una nova taula resumint les dades d'una taula existent.

SUMMARIZE(
    Sales,
    Sales[ProductID],
    "Total Sales", SUM(Sales[SalesAmount])
)

Explicació:

  • Sales: Taula original.
  • Sales[ProductID]: Columna per agrupar.
  • "Total Sales": Nom de la nova columna.
  • SUM(Sales[SalesAmount]): Agregació a aplicar.

ADDCOLUMNS

La funció ADDCOLUMNS afegeix columnes calculades a una taula existent.

ADDCOLUMNS(
    Sales,
    "Profit", Sales[SalesAmount] - Sales[Cost]
)

Explicació:

  • Sales: Taula original.
  • "Profit": Nom de la nova columna.
  • Sales[SalesAmount] - Sales[Cost]: Càlcul per a la nova columna.

Funcions de Filtratge

CALCULATE

La funció CALCULATE canvia el context de filtratge d'una expressió.

CALCULATE(
    SUM(Sales[SalesAmount]),
    Sales[Region] = "Europe"
)

Explicació:

  • SUM(Sales[SalesAmount]): Expressió a calcular.
  • Sales[Region] = "Europe": Filtre aplicat.

FILTER

La funció FILTER retorna una taula que compleix una condició específica.

FILTER(
    Sales,
    Sales[SalesAmount] > 1000
)

Explicació:

  • Sales: Taula original.
  • Sales[SalesAmount] > 1000: Condició de filtratge.

Funcions de Temps

DATESYTD

La funció DATESYTD retorna un conjunt de dates des de l'inici de l'any fins a la data especificada.

DATESYTD(
    Sales[Date]
)

Explicació:

  • Sales[Date]: Columna de dates.

SAMEPERIODLASTYEAR

La funció SAMEPERIODLASTYEAR retorna el mateix període de l'any anterior.

SAMEPERIODLASTYEAR(
    Sales[Date]
)

Explicació:

  • Sales[Date]: Columna de dates.

Funcions de Jerarquia

PATH

La funció PATH retorna el camí jeràrquic d'un node en una jerarquia.

PATH(
    Employees[EmployeeID],
    Employees[ManagerID]
)

Explicació:

  • Employees[EmployeeID]: Identificador del node.
  • Employees[ManagerID]: Identificador del node pare.

PATHLENGTH

La funció PATHLENGTH retorna la longitud d'un camí jeràrquic.

PATHLENGTH(
    PATH(Employees[EmployeeID], Employees[ManagerID])
)

Explicació:

  • PATH(Employees[EmployeeID], Employees[ManagerID]): Camí jeràrquic.

Exercicis Pràctics

Exercici 1: Crear una Taula Resumida

Objectiu: Crear una taula que mostri el total de vendes per producte.

SUMMARIZE(
    Sales,
    Sales[ProductID],
    "Total Sales", SUM(Sales[SalesAmount])
)

Exercici 2: Aplicar un Filtre a una Mesura

Objectiu: Calcular el total de vendes a Europa.

CALCULATE(
    SUM(Sales[SalesAmount]),
    Sales[Region] = "Europe"
)

Exercici 3: Anàlisi Temporal

Objectiu: Calcular el total de vendes de l'any anterior.

CALCULATE(
    SUM(Sales[SalesAmount]),
    SAMEPERIODLASTYEAR(Sales[Date])
)

Solucions

Solució 1

SUMMARIZE(
    Sales,
    Sales[ProductID],
    "Total Sales", SUM(Sales[SalesAmount])
)

Solució 2

CALCULATE(
    SUM(Sales[SalesAmount]),
    Sales[Region] = "Europe"
)

Solució 3

CALCULATE(
    SUM(Sales[SalesAmount]),
    SAMEPERIODLASTYEAR(Sales[Date])
)

Conclusió

En aquest tema, hem explorat diverses funcions avançades de DAX que et permetran realitzar anàlisis més complexes i detallades en Power BI. Hem après a utilitzar funcions de manipulació de taules, filtratge, temps i jerarquia. Aquests coneixements són essencials per a qualsevol analista de dades que vulgui aprofitar al màxim les capacitats de Power BI. En el proper tema, ens centrarem en dissenyar informes efectius.

© Copyright 2024. Tots els drets reservats