# Use DAX in Power BI Desktop

This learning path introduces Data Analysis Expressions (DAX) and provides you with foundational skills required to enhance data models with calculations.

It starts by describing Power BI Desktop model structure and how it can be enhanced with DAX calculations. It then describes how you can write DAX formulas and the different types of model calculations, including calculated tables, calculated columns, and measures. Evaluation contexts are introduced, and subsequent lessons describe how to write DAX formulas that modify filter context. Finally, you learn to write DAX expressions by using time intelligence functions and iterator functions.

## Prerequisites

None

### Modules in this learning path

In this module, you'll learn about the Power BI Desktop model structure, star schema design basics, analytics queries, and report visual configuration. This module provides a strong foundation on which you can learn to optimize model designs and add model calculations.

In this module, you'll learn how to write DAX formulas to create calculated tables, calculated columns, and measures, which are different types of model calculations. Additionally, you'll learn how to write and format DAX formulas, which consist of expressions that use functions, operators, references to model objects, constants, and variables.

By the end of this module, you'll be able to add calculated tables and calculated columns to your data model. You'll also be able to describe row context, which is used to evaluated calculated column formulas. Because it's possible to add columns to a table using Power Query, you'll also learn when it's best to create calculated columns instead of Power Query custom columns.

In this module, you'll learn how to work with implicit and explicit measures. You'll start by creating simple measures, which summarize a single column or table. Then, you'll create more complex measures based on other measures in the model. Additionally, you'll learn about the similarities of, and differences between, a calculated column and a measure.

By the end of this module, you'll learn about what the family of iterator functions can do and how to use them in your DAX calculations. Calculations will include custom summarizations, ranking, and concatenation.

By the end of this module, you'll be able to describe and work with filter context, which is used to evaluate measure formulas.

By the end of this module, you'll learn the meaning of time intelligence and how to add time intelligence DAX calculations to your model.

Occasionally, you might need to add many similar measures to your model. For example, consider that your model includes measures for sales, cost, and profit. You then want to create a report that shows year-to-date (YTD) sales, YTD cost, and YTD profit, in addition to prior year (PY) sales, PY cost, and PY profit. Adding numerous measures can be time-consuming and can clutter the Fields pane with an overwhelming number of fields. Instead of creating each YTD and PY measure, you can quickly add these measures to your model by creating a Data Analysis Expressions (DAX) calculation group.

In this module, you’ll solve three different business problems by optimizing the data model and creating Data Analysis Expressions (DAX) calculations. You’ll have an opportunity to create:

- An airline on-time performance (OTP) report.
- DAX calculations to scale measure values.
- DAX calculations to dynamically classify products.