分析师如何使用 Power BI 将混乱数据、DAX 和仪表板转化为行动
Source: Dev.to
介绍
Power BI 是一个强大的工具,用于:
- 清理数据
- 创建报告
- 构建仪表板
它常常优于其他解决方案,因为它:
- 高效处理大型数据集
- 支持实时仪表板
- 对初学者友好
Power BI Desktop —— 微软提供的免费版本 —— 提供所有这些功能,且无需费用。
Power BI的主要用途
- 连接多个数据源 – Web 服务、Excel 文件、SQL 数据库等。
- 清理和转换数据 – 对原始数据进行整形、合并和丰富,以便分析。
- 构建数据模型 – 定义关系、计算列和度量值。
- 使用 DAX 分析数据 – 创建强大的计算和时间智能逻辑。
- 可视化数据 – 设计图表、地图、过滤器、切片器等交互式可视化。
- 创建报表和仪表板 – 将可视化组合成可共享、交互式的布局。
- 自动化、共享与协作 – 发布到 Power BI Service,实现计划刷新、分发和团队协作。
Source: …
Power BI 中的数据清洗
数据分析师处理的是复杂的数据集,数据清洗不仅仅是删除行或重命名列。Power BI 强大的 ETL(提取、转换、加载)引擎可以将凌乱的数据转化为准确、一致、可直接用于分析的信息。
Power BI 会显示列的质量和分布,帮助快速发现不一致之处。大多数清洗工作在 Power Query 编辑器中完成。

什么会让数据“凌乱”?
常见问题包括:
- 空白行或缺失值
- 重复记录
- 数据类型错误
- 文本格式不统一(例如 “kiambu”、 “MOMBASA”)
常见清洗任务
1. 删除重复项
如果某列(或某组列)必须保持唯一值,选中这些列 → Remove Duplicates(删除重复项)。
2. 正确的格式化
| 数据类型 | 示例列 |
|---|---|
| 文本 | 员工姓名、国家、产品类型 |
| 小数 | 市场价格、收入、毛利润 |
| 整数/小数 | 农户代码(视具体使用而定) |
| 日期 | 种植日期、收获日期 |
- 使用 Transform > Detect Data Type(转换 > 检测数据类型)让 Power Query 自动推断正确的类型。
- 对被误判的列手动进行调整。
3. 处理错误和空值
| 列类型 | 推荐操作 |
|---|---|
| 数值 | 删除错误;保留空白(仅在合理时将空白替换为 0)。 |
| 文本 | 将 null/错误替换为占位符,例如 “Not provided”。 |
| 通用 | 除非整行数据完全不可用,否则避免删除整行。使用 Replace Values(替换值)→ Error → Not provided。 |
4. 统一文本
- Trim – 去除前后空格。
- Uppercase / Proper case – 按需求转换大小写(如
Text.Upper、Text.Proper)。
为什么要进行数据清洗
- 分析准确 – 减少误导性洞察。
- 提升 Power BI 性能 – 更小、更干净的模型加载更快。
- 简化数据建模 – 关系和 DAX 计算能够按预期工作。
完成清洗后,再次运行 Transform > Detect Data Type(转换 > 检测数据类型)以确认列类型,然后点击 Close & Apply(关闭并应用)将清洗后的数据加载到 Power BI。
Power BI 中的 DAX
听起来像是编程,对吧?
DAX(Data Analysis Expressions)是 Power BI 中用于创建度量值、计算列和计算表的公式语言。它通过聚合函数和迭代函数,将原始数据转化为有意义的洞察。
聚合函数
聚合将多行数据合并为单个值。
| Function | Description(描述) | Example(示例) |
|---|---|---|
| SUM | 对数值列中的所有值求和。 | Total Revenue = SUM('Kenya Crops'[Revenue (KES)]) |
| AVERAGE | 计算列的平均值。 | Average Market Price = AVERAGE('Kenya Crops'[Market Price (KES/Kg)]) |
| MIN | 返回列中的最小值。 | Minimum Yield = MIN('Kenya Crops'[Yield (Kg)]) |
| MAX | 返回列中的最大值。 | Maximum Profit = MAX('Kenya Crops'[Profit (KES)]) |
| MEDIAN | 返回列的中位数。 | Median Profit = MEDIAN('Kenya Crops'[Profit (KES)]) |
| COUNT | 统计列中数值(或非空)值的个数。 | Yield Count = COUNT('Kenya Crops'[Yield (Kg)]) |
迭代函数
迭代函数逐行计算表达式,然后对结果进行聚合。
SUMX
Total Profit (SUMX) =
SUMX (
'Kenya Crops',
'Kenya Crops'[Revenue (KES)] - 'Kenya Crops'[Cost of Production (KES)]
)AVERAGEX
Average Profit per Acre =
AVERAGEX (
'Kenya Crops',
DIVIDE (
'Kenya Crops'[Profit (KES)],
'Kenya Crops'[Planted Area (Acres)]
)
)COUNTX
Profitable Farms Count =
COUNTX (
'Kenya Crops',
IF ( 'Kenya Crops'[Profit (KES)] > 0, 1 )
)逻辑函数
逻辑函数让你根据条件作出决策(例如 IF、AND、OR)。
示例 – 利润或亏损分类(度量值)
Profit Status =
IF (
SUM ( 'Kenya Crops'[Profit (KES)] ) > 0,
"Profitable",
"Loss"
)Power BI 仪表板
仪表板是经过精心设计的可视化集合,帮助企业快速回答特定问题。它提供一页的高层视图,展示关键因素,让人一眼即可看出整体故事。
仪表板的主要元素
- KPI 卡片 – 如收入、访问量、利润
- 趋势线 – 如年度销售额趋势
- 顶部 / 底部表现者
- 警报 – 基于阈值的通知
- 筛选器和切片器 – 如日期、地区
创建优秀仪表板的技巧
- 避免使用过多可视化导致页面拥挤。
- 保持计算简洁且性能良好。
- 使用统一的颜色和字体。
- 提供清晰的标题和标签。
- 确保交互性(筛选、下钻)直观易用。
仪表板布局原则
- 阅读顺序 – 用户从上到下、从左到右浏览仪表板。
- 优先级 – 将最重要的信息放在左上角。
常见部分
| 部分 | 目的 | 推荐可视化 |
|---|---|---|
| 顶部 | 关键绩效指标 (KPIs) | 卡片(单值可视化) |
| 中部 | 趋势与绩效分析 | 折线图、柱状图、条形图、面积图等 |
| 底部 | 支持性细分与详细比较 | 矩阵、表格、详细图表 |
| 过滤器 | 为用户提供便捷访问 | 放置在仪表板顶部或侧边 |
仪表板使用的主要可视化
图表
柱状图
柱状图使用垂直条形来比较各类别的数值。

条形图
类似柱状图,但使用水平条形。

折线图
使用相连的数据点显示随时间的趋势(例如,年度毛利润)。

饼图和环形图
最适合展示少数类别(2–5)对整体的百分比贡献(例如,按作物类型划分的收入份额)。

卡片可视化
显示单一聚合值(例如,总收入、总利润)。

矩阵可视化
类似透视表,拥有行列(例如,按县和季节划分的收入)。

散点图
展示两个数值变量之间的关系(例如,成本 vs. 收入、产量 vs. 利润)。

气泡地图
在地理地图上使用气泡表示数量级(例如,各国毛利润)。

交互式仪表板示例

结论
有效的分析依赖于准确、一致且经过充分清洗的数据。
DAX 使分析师能够将已清洗的数据转化为有意义的洞察,而精心设计的仪表板则帮助利益相关者做出知情且有效的决策。