本文将是面向未来的、脱离工具的分析通识内容,将是未来新书的速览版本。内容覆盖数据基础、分析基础、可视化基础、计算基础、交互基础、“多维分析”、业务主题场景等内容。
⚠️ 本系列不能保证更新进度,也不能保证完全公开,部分内容会在最终图书出版后,或者付费公开。
⚠️本文结构,依然较大地受到了《数据可视化分析》《业务可视化分析》的影响
- 1-分析常识:数据库、数据表、数据查询 ——所有工具背后的基础
- 2- 分析常识:分析的本质过程、问题的基本结构——适用于所有工具的分析过程
- 3- 分析常识-工具篇:从问题结构看SQL、DAX的共同性 ——基于新的框架理解SQL和DAX计算
- 4-分析常识-工具篇:DAX计算体系——计算的两大阶段、上下文体系 —— 数据准备与问题分析
- 5-分析常识:业务、分析角度看计算的基本分类(初级) —— 计算的基本分类
- 6- 分析常识:分析中的计算分类(高难度) ——字段计算的分类形式和分类矩阵
- 7-分析常识:分析查询的“表操作”_SQL为例(高难度) –计算的本质过程是“表操作”
一、入门篇:分析通识
第一章 数据基础:数据库、数据表、数据查询
关于数据库、数据表、数据查询,你需要知道的最低限量的知识,同时了解数据查询query和数据分析analysis的本质区别。
点击访问系列1——分析常识-1:数据库、数据表、数据查询
- 数据库:存放数据的容器、架构,属于完全技术的范畴。两类数据库的分类应该是通识。
- 数据存储:文件存储、数据库(参考《可视化导论》陈为)
- 数据表:数据存、取的基本对象,直接对应业务过程,或者分析问题。
- 数据查询:与数据库中的table打交道的方式,分析是特殊的查询形式。

数据表是分析的关键,其中又可以延伸很多关键知识,比如数据类型、统计分析。
第二章 分析基础:分析的位置、过程,以及分析工具
May 27, 2023 修改
1、分析与业务、技术的关系
分析,是对数据表的抽象、逻辑计算过程,技术上,体现为从数据表到数据表的计算(这句话对计算很重要);
分析,是站在高处对业务过程的概括、抽象理解,体现为“包含指标的问题”(后续可视化分析的基础)。
用喜乐君总结的经典结构来看,分析是对数据表的抽象、数据表是对业务过程的抽象。

“业务-数据-分析”层次关系图
2、“数据查询”和“数据分析”的关系
狭义的“数据查询”,是从数据表中找到、提取所需数据的数据检索过程,期间并不涉及到数据的二次计算处理过程,技术上是投影字段列和过滤明细行的结合,在SQL中对应select、from和where语句;
广义的“数据查询”,包含数据检索、数据检索后的加工处理,甚至多遍处理转换的过程,也就是Query查询。
“数据分析”,特指从业务的指标、问题出发,基于数据检索、数据转换、计算,并以合适的方式回答问题的过程,最终的展现形式不限于交叉表,还可以是可视化图表📈,或者自然语言的问答等。
从技术的角度看,“聚合计算”是数据分析的必然要素,是技术上的本质过程;也是区别于狭义的“数据检索”的关键所在。
“可视化”地理解分析的过程,喜乐君推荐用线和箭头代表分析的起点和终点,这也是后期通往多维分析、多重聚合的捷径。

3、分析的本质过程、核心构成和问题结构
既然分析的必然要素是聚合,围绕聚合的必备要素,就是分析的必然结构。
首先要问:聚合,是什么类型聚合?谁的聚合?相对于谁的聚合?
比如,领导要问“公司的销售额总和”,这里的聚合方式是“总和”SUM,聚合对象是“销售额”,聚合依据就是“公司”,理解了聚合的三个要素,我们就可以顺利完成领导之所需。
比如,领导要问“不同科室的平均员工年龄”,这里的聚合类型是“平均值”AVERAGE,聚合对象是“员工年龄”,聚合依据是“科室”。如果用通用的SQL来回答问题,只需要如下的查询语句:
SELECT 科室, -- 每个科室 的
AVG(年龄) -- 平均年龄
FROM employee -- 从员工信息表中查询、计算
GROUP BY 科室 -- 科室是AVG聚合的分组依据,五个科室、返回5个值
可见,围绕聚合,最重要的是聚合类型、聚合对象、聚合依据,在计算中,聚合类型和聚合对象通常紧密结合构成一个函数(比如AVG(age),SUM(sales)),可以合成“聚合值”。
因此,理解分析过程的关键,就可以分为聚合值、聚合依据两大部分。它们也是每一个问题必然包含的两大部分。在问题中,我们常常把聚合值称之为“度量”Measure,把聚合依据称之为“维度”Dimension。用一句话说:
“维度是聚合值/度量的分组依据”
喜乐君
这是至关重要的一句话,随着高级计算的层层叠叠(比如聚合的二次聚合,预先聚合作为行级别维度等),这句话会越来越重要。
- 用业务的语言说,聚合的业务形态是“指标”;
- 用技术的语言说,聚合的技术路径是“跨行、标量计算”。
分析必然包含分组聚合的过程。聚合,其实是“分组聚合”的简称,每一个聚合,必然要有分组字段与之对应。
4、聚合的典型实现工具
在不同工具中,聚合过程的实现方式略有不同(有可视化方式,也有函数方式),但本质相同。
包括excel透视表、SQL 的group BY分组聚合、Tableau可视化、DAX的SummarizeColumns计算等。
它们之间的差异,体现了时代的变化、数据量的变化、技术的进步,后来的工具几乎总是有条件的向前兼容。
第三章 问题分析基础:问题结构、字段属性
New:重新调整,独立为章节,重点说明字段类型
分析是面向业务主题的,比如销售主题、客户分析主题。不过,分析的实现是以具体问题为起点的,比如“2022年,各区域的销售额及利润率”;多个问题的组合和交互设计构成分析主题,典型的方案是Dashboard仪表板(或曰仪表盘)。
- 假设数据表的质量很好,数据表中已经包含了问题分析中所需要的所有字段,此时只需要聚焦问题的结构:分析范围、分析对象、问题答案(指标)。
- 如果数据表的质量不好,就需要(单表中)计算或者(多表)数据合并弥补问题中字段的不足,这就是最为复杂的数据建模与计算体系。
1、假定数据表中已经包含了问题所需的所有字段,聚焦于如何聚合、如何影响聚合值的大小和展现。
分析是分组聚合,分组和聚合是最重要的两个部分,技术上,可以用“维度”和“度量”称之,构成了分析的关键概念。
维度影响聚合值的分组数量,而筛选影响聚合值的大小,筛选、维度、度量是问题的三个基本要素,业务上称之为分析范围、分析对象、问题答案。

问题结构看似简单,其实可以引申出几乎所有的关键分析技术,包括筛选、基本计算、高级计算、 逻辑表、数据合并等等。其中最具有基础性的,当属字段的属性特征——维度和度量。
2、维度和度量:字段属性入门
字段属性可以有多种理解方式,每一种属性的定义,都可以让分析师的工作大为简化。
更多内容,详见: 分析常识-2:分析的本质过程、问题结构– SQL视角
第四章 可视化分析基础:视觉要素、问题类型、字段分类
- 为什么要用可视化?人的视觉神经感知系统,是高级的数据采集和判断系统,可视化可以充分发挥人的能力。
- 对应的理论基础:“前注意属性”(低阶视觉)和格式塔理论(认知心理学)
- 视觉的特征和规律性:长度、高度、颜色、连续等,以及问题的主要类型,决定了常见图形的样式
- 业务分析追求“从问题到图形”的逻辑
- 从问题到图形的背后,是字段的另一个字段属性(连续/离散),它有助于实现可视化的自动化
- 可视化的背后是聚合表,可视化图形和聚合交叉表,都是从数据明细表到置顶问题的聚合结果。
从聚合表转化为可视化的逻辑,是构建可视化的关键,其中包含字段的连续与离散特征、人的直觉判断样式、常见可视化图形分类、可视化增强方式等内容。

可视化背后,问题中的字段特征决定了可视化类型,背后是直觉心理学。
字段三分类:连续、离散的二分类,或者连续、次序、离散的三分类
第五章 可视化:从传统分析,到大数据分析
传统分析图形:条形图、折线图、饼图、交叉表。
- 交叉表的过度延伸:复杂报表。
- 饼图的过度延伸,环形图、玫瑰图。
直方图是转折点:考验大数据理解能力,三种类型:基本直方图、数据桶直方图、预先聚合直方图。
第六章 问题分析:仪表板与交互设计
1、交互基础:单表的筛选交互
交互赋予可视化以灵性,最常见的方式是筛选,还有参数、高亮、动画、跳转、下载等多种交互方式。
按照交互是否需要中间变量为标准,可以分为基本交互、高级交互。

筛选是应用最广泛的交互方式。
在仪表板中,建立多个工作表之间的关联筛选,是每个BI的基本功能。
2、分析仪表板:分析主题与关联交互
问题是业务数据分析的基本单位,而仪表板则是业务分析展现的基本单位。
问题分析强调问题构成解析、问题类型、图形类型、聚合、筛选;而仪表板设计强调布局、对象、交互设计、设备适配等。前者是后者的组成部分,仪表板中增加了更多的主观见解。
如图7-10所示,展示了笔者推荐的商业仪表板布局风格。

二、进阶篇:理论与案例
从SQL、Tableau、Power BI的角度理解计算
第一章 从聚合度量,到复杂指标体系
measurement,measure,metrics,KPI
指标的三种类型。
第二章 从简单筛选,到多阶段、多层次筛选体系
筛选的阶段:数据表行级别阶段、视图聚合后阶段
筛选的详细级别:数据表详细级别、视图详细级别、指定详细级别
第三章 “多维分析”:从单一详细级别,到多详细级别
1、在当前详细级别中,增加指定详细级别的聚合
- 增加另一个详细级别的聚合
2、两个技术路线:Tableau LOD 与DAX Calculate表达式
“结构化分析”理论框架:聚合度、详细级别
从简单问题,走向高级问题的关键。
第四章 高级分析的常见技术:表达式、集
- 详细级别与聚合结合:LOD方式、窗口函数
- 筛选条件与聚合组合:Calculate方式
- 筛选条件和维度组合:动态集
第三篇 “数据表就是一切”:从单表分析,到多表关系
第一章 数据表及其相互关系
暂无
第二章 数据合并的分类矩阵
同《数据可视化分析(第二版)》第四章第一部分
第三章 Tableau数据关系模型与Power BI表模型
暂无
第四章 包含计算和多表合并的计算体系
广义的角度看,数据表合并是一种特殊的计算,可以称之为“表操作”。
计算围绕“问题”而展开,所有的计算都可以称之为“问题”的准备。
按照是否直接服务于问题的度量聚合,计算还可以分为“数据准备”和“问题分析”两个阶段。不同阶段又可以区分更多的计算类型,数据准备强调表关系,问题分析强调聚合和字段,重点有所不同。如下所示:

不同的工具,采用了不同的实现方式,SQL中所有的计算都是查询语句和函数,用“操作顺序”来区分不同阶段;Tableau则用Prep和Desktop分别完成复杂数据准备和问题分析,也就是区分了ETL和分析函数;Power Bi则在DAX中使用Row Context和Filter Context两个环境区分两类计算,不同的入口、相同的语法和函数。
更更进一步,不管是数据准备,还是问题分析,都可以再按照两个方式进一步细分,即计算的分类矩阵。

从理解的难度上看,Power BI的DAX最难、最复杂、最高级,SQL的体系最灵活、最通用、最简洁,Tableau的“可视化+计算”体系最易用、最友好。
- SQL:表函数、字段函数
- Tableau:字段函数
- Power Bi:表函数、字段函数
在 分析常识-3:理解函数,及其与计算关系 一文中,喜乐君先从SQL开始说起,介绍了计算的分类,而后对比DAX的计算体系。
第四篇 案例解读(略)
第二章 零售的销售与达成分析
第二章 会员主题分析
第三章 银行个人养老金业务精讲
第四章 制造业生产过程分析
@喜乐君
V1, Mar 14, 2023
V2, Apr 15, 2023 补充第一部分大纲,细化第二篇框架