用于创建表和列的 DAX

Power BI 中的 DAX 函数

Carl Rosseel

Curriculum Manager at DataCamp

DAX 即数据分析表达式

  • DAX 是一种在多种 Microsoft 分析工具中使用的公式表达式语言

Screenshot 2021-06-08 at 10.15.24.png

  • DAX 公式包含函数、运算符和数值,用于执行高级计算
  • DAX 公式用于:
    • 度量值(Measure)
    • 计算
    • 计算表
    • 行级安全性
Power BI 中的 DAX 函数

DAX 的强大之处

  • 带来新能力:
    • 连接、筛选、度量值和计算字段加入工具箱
  • DAX + Power Query = 强大的数据分析工具:
    • 更深挖数据,提炼关键信息
    • 用 DAX 快速原型设计
Power BI 中的 DAX 函数

度量值 vs 计算列

计算列:

  • 在数据导入时计算
  • 在表和报表视图可见

COST = Orders[Sales] - Orders[Profit]

Order_ID Sales Profit Cost
3151 $77.88 $3.89 $73.99
3152 $6.63 $1.79 $4.84
3153 $22.72 $10.22 $12.50
3154 $45.36 $21.77 $23.59
Power BI 中的 DAX 函数

度量值 vs 计算列

计算列:

  • 在数据导入时计算
  • 在表和报表视图可见

COST = Orders[Sales] - Orders[Profit]

Order_ID Sales Profit Cost
3151 $77.88 $3.89 $73.99
3152 $6.63 $1.79 $4.84
3153 $22.72 $10.22 $12.50
3154 $45.36 $21.77 $23.59

度量值:

  • 在查询运行时计算
  • 仅在报表窗格可见

Total Sales = SUM(Orders[Sales])

Region Total Sales
Central $501,239.89
East $678,781.24
West $391,721.91
South $725.457.82
Total $2,297,200.86
Power BI 中的 DAX 函数

上下文让分析更动态

有三种上下文:行、查询和筛选上下文

  • 行上下文:(1)
    • "当前行"
    • DAX 计算列

COST = Orders[Sales] - Orders[Profit]

Power BI 中的 DAX 函数

上下文让分析更动态

有三种上下文:行、查询和筛选上下文

  • 行上下文:(1)
    • "当前行"
    • DAX 计算列

COST = Orders[Sales] - Orders[Profit]

Order_ID Sales Pofit Cost
3151 $77.88 $3.89 $73.99
3152 $6.63 $1.79 $4.84
3153 $22.72 $10.22 $12.50
3154 45.36 $21.77 $23.59
Power BI 中的 DAX 函数

上下文让分析更动态

有三种上下文:行、查询和筛选上下文

  • 查询上下文:(2)
    • 指公式隐式检索的数据子集
    • 由切片器、页面筛选器、表列和行标题控制
    • 由图表/可视对象筛选器控制
    • 发生在行上下文之后
Power BI 中的 DAX 函数

上下文让分析更动态

  • 查询上下文:(2)
    • 示例:按 Region 筛选数据。
Region Total Sales
Central $501,239
East $678,781
West $391,721
South $725.457
  • 查询上下文:(2)
    • 示例:按 State 筛选数据。
State Total Sales
Alabama $13,724
Arizona $38,710
Arkansas $7,669
California $381,306
Power BI 中的 DAX 函数

上下文让分析更动态

有三种上下文:行、查询和筛选上下文

  • 筛选上下文:(3)
    • 每列允许的取值集合,或来自相关表的取值
    • 通过公式参数或报表中的行列标题筛选实现
    • 发生在查询上下文之后
Power BI 中的 DAX 函数

上下文让分析更动态

有三种上下文:行、查询和筛选上下文。

  • 筛选上下文 (3)

Total Costs East = CALCULATE([Total Costs], Orders[Region] = 'East')

Region Total costs Total costs East
Central $617,039
East $587,258 $587,258
West $461,534
South $344,972
Total $2,010,804 $587,258
Power BI 中的 DAX 函数

上下文一览

Context overview.png

Power BI 中的 DAX 函数

World Wide Importers 数据集

  • 一家虚构的批发商,进口并分销新奇商品
  • 数据集包含:
    • 一张记录销售交易的事实表
    • 多张维度表:
      • 日期
      • 客户
      • 城市
      • 员工
      • 库存品项

World wide importers model view.png

Power BI 中的 DAX 函数

Ayo berlatih!

Power BI 中的 DAX 函数

Preparing Video For Download...