Lazy loaded image数据分析与可视化的基础材料:从二维表与多维表的细分谈起

type
status
date
slug
summary
tags
category
icon
password
本期文章是Power Query 系列的第一篇文章,我们从二维表和多维表的认知谈起,这是我们后面进行数据分析绕不开的一个最为基础的认知,那么在数据分析领域,或者在PowerBI、Power Query这类软件中,二维表、三维表或者多维表,这些概念究竟是怎么来区分和定义的?数据清洗阶段又怎么来操作,并且需要达到什么样的标准?

二维表 - 数据的“原材料”

二维表是我们最熟悉、最基础的表格形式,也是所有数据分析的起点。我们进行数据清洗的目标也是为了把数据整理成一个计算机能够理解和分析的“标准二维数据表”(也称为Tidy Data)!
二维数据表:一个由行 (Rows) 和 列 (Columns) 构成的平面结构。每一行代表一个独立的记录(比如一笔交易、一个员工),而每一列则定义这个记录的一个属性(比如交易的金额或者时间、员工的姓名或年龄)。
Power Query 的核心工作空间就是二维表。它的所有操作——无论是删除列、筛选行、更改数据类型,还是合并、追加、拆分——都是在对一个或多个二维表进行处理,他最终的输出结果也永远是一个干净、规整的二维表。
Power Query它的唯一任务就是把各种形状不一(大量合并单元格或者为了满足人类视觉需要而制作的静态多维表格)的“原材料”,通过填充、替换值、透视列、逆透视列、转置、拆分列等一系列的转换操作,加工成标准化的“零件”(干净的二维表),以供后续使用。并且只要这个源格式没有变化,那么这一系列的操作(冻结成标准工序)都会记录在案,下次只要把同样的原始表导入,Power Query就会瞬间将其整理好,非常高效,可以视作是一个高度自动化的数据清洗工厂。

Power Query 的角色:二维表的“工匠”

  • 输入:各种混乱的二维表。
  • 工作:通过 ETL (提取、转换、加载) 过程,创建出两种非常重要的、标准化的二维表:
      1. 事实表 (Fact Table): 存放度量和与维度表关联的“外键”。通常行数非常多,很长。例如,一笔笔的销售记录表。
      1. 维度表 (Dimension Table): 存放维度的具体信息。通常行数较少,很宽。例如,产品信息表、客户信息表、日期表。
  • 输出:一组干净、独立的、符合“星型模型”或“雪花模型”规范的二维表。
  • 结论Power Query 的世界里只有二维表。它的目标就是为构建多维模型提供最优质的二维“建材”。
我们最终用来分析的数据,几乎总是以二维表(或一组相关的二维表)的形式存在的。
这是因为:
  1. 主流数据存储系统的基础:无论是关系型数据库(如SQL Server, MySQL)、电子表格(Excel, Google Sheets),还是最常见的数据交换文件(CSV, TXT),它们存储和组织数据的基本单位就是二维表。这是几十年来经过验证的最成熟、最高效的数据组织方式。
  1. 分析工具的“通用语言”:像Power Query, Power BI, Tableau, Python (Pandas), R等所有主流数据分析工具,它们内部处理数据的核心数据结构就是二维表(在Pandas中称为DataFrame)。它们的所有功能都是围绕着操作这个二维结构来设计的。
  1. 人类理解的直观性:行和列的结构非常符合人类的认知习惯,易于阅读和理解。

三维表&多维表-分析的“逻辑模型”

这里所说的“维”其实已经不再像二维表那样,有物理上实际存在的行、列、高,并不是这样的,而是指分析数据的角度。多维表不是一个真实存在的、你看得见的“表格”,而是一个概念模型,可以被称为一种数据形式的立方体 (Data Cube)。它没有单一的物理形态。你无法在 Excel 中直接“画”一个立方体,它的实现依赖于不同的数据查询角度的组合。
举一个直观的例子,我们在Excel中经常会使用数据透视表的功能,相信大部分朋友有过使用经验,假设你有一个关于产品销售额的二维表,每一行代表一条产品的交易记录,每一列代表记录这条交易记录的属性值,分别有这条交易所属的“销售区域”、“产品类别”、销售时间、“销售额”。
你用这个二维表来,创建一个数据透视表:
  1. 行区域:拖入 [销售区域] 维度。
  1. 列区域:拖入 [产品类别] 维度。
  1. 值区域:放入 SUM([销售额]) 度量值。
  1. 筛选器区域:放入 [销售时间] 维度。
此时,你看到的是一个交叉表。这个交叉表就是多维模型的一个二维投影或者快照视图,它清晰地展示了至少两个维度(销售区域、产品类别)是如何交叉影响一个度量(销售额)的,当你再去调整筛选器里的销售时间时,就在第三个维度上进行了交互,这个时候出来的数据模型,或者说这个立方体,实际上就是一种多维表了。

三维表 vs. 多维表

  • 三维表是多维表的一个特例,指恰好有三个维度。比如,按 [时间]、[地区]、[产品] 三个维度分析 [销售额]。这个概念有助于我们形象地理解数据立方体。
  • 多维表是更通用的说法,可以有任意多个维度(二维、三维、四维……)。
这样,我们可以在一个二维的平面上,执行一个具有多维逻辑的、临时性的查询,然而数据透视表或者数据透视图是存在于Excel这个平台的,其处理数据的能力有限,并且是临时性的拖拉拽,而形成一个可供临时查阅的数据,无法进行更进一步的操作!
那么这个时候Power BI就出现了,在Power BI中,这个概念被发挥到了极致。整个数据透视模型,可以被固化成一个强大的、后台的多维立方体,通过这个立方体生成的每一个图表,都是对这个立方体进行查询后得到的一个漂亮的、二维或多维的可视化结果。

总结

特性
二维表 (2D Table)
多维模型 (Multi-dimensional Model)
核心概念
行与列构成的平面结构
度量与维度构成的逻辑立方体
目标
存储原始或处理后的数据记录
便于从多角度进行聚合、钻取和切片分析
在工具中的体现
Power Query 的操作对象和输出结果
Power BI 数据模型 (通过关系和DAX构建)
如何交互
通过筛选、排序等直接操作
通过报表中的图表、矩阵、切片器进行交互式查询
比喻
建筑用的标准砖块 (事实表/维度表)
用砖块搭建起来的整栋大楼 (数据模型)

写在最后

所以,可以这样说,在数据分析的世界里,所有操作的结果最终都通向二维表。正如上面列举,我们获取的原始数据大部分是二维表,即使遇到不是的,我们的首要任务也是利用工具(如Power Query)将其转化为标准的二维表,以便进行后续的分析和建模。
当我们想查看某个多维数据模型表的具体某个值是怎么构成的时候,我们也是将其转换成二维表来进行阅读的,最典型的例子就是比如上面我们提到的数据透视表,如果我们想查看这个模型下的某个具体金额的构成,只需要在Excel中双击这个数字,然后系统会自动生成一个新的工作表(二维数据表)来进行展示的。

别忘了点赞、转发、推荐、关注,让更多财会同行、创业者看到!关注【汪斌带你开公司】,创业路上财税护航,不迷路!
 
 
上一篇
PowerBI、PowerQuery中什么是事实表和维度表?
下一篇
学习PowerBI之前先接触Excel的三大高级功能:Power Query、Power Pivot、Power View
Loading...
文章列表
让财税成为经营的力量
电脑与网络
从Power Query到Power BI,入门到精通
知识运用